我写了简单的业余代码:
#!/usr/bin/env python2
# this code reads a string from a file
with open('text1.txt', 'r') as myfile:
data=myfile.read()
c = data[3]
if c == ["a"]:
print c
else:
print (c, 'is not a')
当我在text1.txt文件中写下字符串时,我知道位置[3]中的字符确实是[' a']。但是,代码返回了无关紧要的答案:
(' a','不是')
我尝试了很多东西:将字符串转换为列表,使用"是"而不是" ==",在" a"中添加或不添加引号,但结果始终相同:代码无法建立标识。这是怎么回事?
非常感谢任何帮助。
答案 0 :(得分:0)
您正在与if语句中的列表进行比较。它应该是:
if c == "a":
print c
else:
print (c, 'is not a')