我有一本词典
local={'obj1' : p }
其中p是具有结构的其他类名的对象
class name:
x = 0
y = 0
time = 0
PCH = []
FCC_Queue = []
我使用类名称的对象存储了值,现在我想检查PCH和FCC_Queue中存在的值。假设我想检查10在PCH列表中是否存在,或者不应该作为if语句的条件写什么?
答案 0 :(得分:7)
我想检查PCH列表中是否存在10
if 10 in local["obj1"].PCH:
# do stuff
答案 1 :(得分:2)
class name:
x = 0
y = 0
time = 0
PCH = []
FCC_Queue = []
p = name()
local = {}
local['obj1'] = p
((1 in local['obj1'].PCH) | (1 in local['obj1'].FCC_Queue))
False
local['obj1'].PCH.append(1)
((1 in local['obj1'].PCH) | (1 in local['obj1'].FCC_Queue))
True
答案 2 :(得分:0)
local={'obj1' : p }
if 10 in local["obj1"].PCH:
# do something
这是有效的,因为在PCH
中查找p
失败后,搜索会移至p.__class__
,即name
且PCH
。 Bdw,如果只有name
,那么最好使用namedtuple
代替class
。后者更笨,更慢。