我正在一个for-a循环中编写一个带有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"
你不能这样检查。如果True则结果为eachenv=="DEV01",否则结果为"DEV02",而不是False
你应该这样走:

if eachenv in ["DEV01", "DEV02"]:

也将for eachenv in envnames:更改为:
for eachenv in envnames.readlines():

10-06 03:18