Python中的Elif条件

时间:2016-05-04 07:54:19

标签: python

我有一些Python代码需要从名为varfile.txt的文本文件中获取字符串输入,并且条件要应用于该数据并打印输出。代码如下:

file = open("varfile.txt", "r")
lines = file.readlines()
e= str(lines[1]);
print(e)
if  e == '<0.1%':
        print("1")
elif  e == '(0.1-25)%':
        print("2")
elif  e == '(0.25-0.5)%':
        print("3")
elif  e == '(0.5-1)%':
        print("4")
elif  e == '>1%':
        print("5")
else:
        print("0")

输出如下:

(0.25-0.5)%  
0

即使e值打印为(0.25-0.5)%,它也不会与elif子句中的条件进行比较并将0作为输出,但输出应为{{1} }。你能告诉我哪里出错吗?

2 个答案:

答案 0 :(得分:7)

根据this tutorial files.readlines(),不会从行的末尾删除结尾的新行字符。

您可以使用e.strip('\n')返回删除换行符的字符串,例如:

e = e.strip('\n')
if e == ...:
elif ...

答案 1 :(得分:1)

readlines merge字符。