是否有一种方法可以使打印只包含依赖于if语句的内容,如:
for i in list_of_numbers:
print(f"Hello {i}" if i in range(100))
如果我输入它期望一个else但是,如果If语句不为真,我不想打印任何东西,python强制这样做:
print(f"Hello {i}" if i in range(100) else '')
这是一个复杂的单行问题,如果您对此感兴趣,您可以这样做:
print(*(f"Hello {i}" for i in list_of_numbers if i in range(100)),sep="n")
如果去掉隐含的换行符,第二个例子就可以正常工作了。
print(f"Hello {i}" if i in range(100) else '', end='')
现在当i in range(100)
求值为false时,它不打印任何内容。