我有一个看起来像这样的命名空间:
命名空间(aTQ =无,bE =无,bEQ =无,b =无,bQ =无,c =无, c =无,cJ =无,d =无,g =无,jR = ['xx','015'],lC =无,l =无)
如何迭代它以便我可以找到并替换“jR”键的'xx'值?
我有一个看起来像这样的命名空间:
命名空间(aTQ =无,bE =无,bEQ =无,b =无,bQ =无,c =无, c =无,cJ =无,d =无,g =无,jR = ['xx','015'],lC =无,l =无)
如何迭代它以便我可以找到并替换“jR”键的'xx'值?
我不确定你事先知道什么,(名字 jR
,或只有一个名称有一个 not None
但是你可以尝试使用vars() __dict__
应该是一个将命名空间中的名称作为键的字典。所以,如果你有字符串 'jR'
某处,
vars()['jR'] = vars()['jR'][0]
同样,你可以使用相同的词典 namespace.__dict__
代替 vars()
将为您留下第一个值 ['xx','015']
作为唯一的价值 jR
。
编辑:要明确,因为 vars()
和 __dict__
两者都返回dicts,你可以迭代它们:
for k in namespace.__dict__:
if namespace.__dict__[k] is not None:
<<do something>>