if mo.exists() or ao.exists():
for d in [mo,ao]
我不想浏览列表中的两个对象,只返回返回True的对象。 似乎无法解决这个问题?
由于
答案 0 :(得分:4)
创建一个这样的生成器表达式,并过滤为True
调用返回exists()
的对象,
for item in (obj for obj in (mo, ao) if obj.exists()):
...
答案 1 :(得分:1)
res=[d for d in [mo,ao] if d.exists()]
for r in res:
捕获res列表中的所有True并迭代res。
答案 2 :(得分:0)
只需将if
声明分开:
if mo.exists():
for d in mo:
#do stuff
elif ao.exists():
for d in ao:
#do other stuff
答案 3 :(得分:0)
试试这个,
if mo.exists() or ao.exists():
if not mo:
for d in ao:
#do
else:
for d in mo:
#do