将输入与.txt进行比较并接收错误

时间:2010-12-18 00:34:38

标签: python-3.x

我试图将用户输入与.txt文件进行比较,但它们永远不会相等。 .txt包含数字12.当我检查.txt是什么时它会打印出来

<_io.TextIOWrapper name='text.txt' encoding='cp1252'>

我的代码是

import vlc
a = input("test ")
rflist = open("text.txt", "r")
print(a)
print(rflist)
if rflist == a:
    p = vlc.MediaPlayer('What Sarah Said.mp3')
    p.play()
else:
    print('no')

所以我在open()上做错了什么,或者完全是其他什么

2 个答案:

答案 0 :(得分:2)

rflist.read()f.readline()是正确的。

阅读documentation第7.2节

Dive Into Python是一本很棒的书来启动Python。看看它,你不能放下它。

答案 1 :(得分:2)

要打印文件内容而不是文件对象,请尝试

print(rflist.read())

而不是

print(rflist)

文件对象不是文件本身包含的文本,而是一个便于对文件进行操作的包装器对象,如读取其内容或关闭文件。