我正在通过从文本文件中逐行读取输入,在 for 循环中使用 if-else
条件编写一个简单的 Python 脚本。下面是我的脚本。
我应该得到预期的输出。请帮忙!
我的 env.txt 包含:
DEV01
DEV02
UAT01
UAT02
代码如下:
with open("env.txt") as envnames:
for eachenv in envnames:
if eachenv=="DEV01" or "DEV02":
eachenv="dev"
print (eachenv)
elif eachenv=="UAT01" or "UAT02":
eachenv="uat"
print(eachenv)
else :
print('')
预期:
dev
dev
uat
uat
实际:
dev
dev
dev
dev
最佳答案
问题是if eachenv=="DEV01"or "DEV02"
。
你不能这样检查。如果 eachenv=="DEV01"
,结果将为 True
,否则结果将为 "DEV02"
,而不是 False
。
你应该这样走:
if eachenv in ["DEV01", "DEV02"]:
同时将 for eachenv in envnames:
更改为:
for eachenv in envnames.readlines():
关于python - for循环中的if-else在python中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54267307/