我正在尝试创建一个 for 循环,动态检查相应列表中是否存在某些值。我不确切地知道我是否可以转换列表中的字符串,或者是否有更好的方法来执行此操作。
rating_1 = ['no', 'yes']
rating_2 = ['no', 'yes']
for item in d:
if d[item] not in item: # I don't want to use the item,
# only get name that will match the respective list above
print "value not allowed"
d = {'rating_2': u'no', 'rating_1': u'no'}
my_lists = {
'rating_1' = ['no', 'yes'],
'rating_2' = ['no', 'yes'],
}
d = {'rating_2': u'no', 'rating_1': u'no'}
for item in d:
if d[item] not in my_list[item]:
print "value not allowed"
或者,如果你想使用变量,使用vars()
提供当前命名空间的字典,您可以在其中使用变量名作为键。
rating_1 = ['no', 'yes']
rating_2 = ['no', 'yes']
d = {'rating_2': u'no', 'rating_1': u'no'}
for item in d:
if d[item] not in vars()[item]:
print "value not allowed"
我是一名优秀的程序员,十分优秀!