2010-12-18 55 views
0

我試圖比較用戶輸入與.txt文件,但他們永遠不會相等。該.TXT包含數字12.當我檢查,看看有什麼名.txt它打印出來作爲比較輸入與.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()或者是完全不同的東西

+1

你沒有閱讀文檔或一些教程,這是問題;) – delnan 2010-12-18 00:36:46

回答

2

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

閱讀documentation 7.2節

Dive Into Python是一個奇妙的書,開始了Python。看看它,你不能把它放下。

2

要打印的文件,而不是文件對象的內容,嘗試

print(rflist.read()) 

,而不是

print(rflist) 

一個文件對象是不包含在文件本身的文本,而是一個包裝對象,便於對文件進行操作,如閱讀其內容或關閉它。