-2

Excel シートを TXT 形式でエクスポートしました。Python で読むと、文字列を見つけることができません。

いくつかの方法を試しましたが、どれも機能しません。それぞれの方法は、1 文字の長い文字列を探す場合にのみ機能します! どうして?!?

fname="elenco.txt"

counter=0
for line in open(fname):
    counter = counter + 1
    if counter>5:
        break
    if "AB" in line:
        print "funziona"
    print line
    
with open(fname, 'r') as inF:
    for line in inF:
        if 'T' in line:
            print "OK"
    
with open(fname) as f:
    content=f.readlines()
counter=0
for rec in content:
    test=rec[:len(rec)-5]
    print test, ">>>",test.find('TORINO')
    counter = counter + 1
    if counter>5:
        break
    #if rec.find("ABBIA")>0:
    #   print "Trovato: " + rec
print "Fine."
4

3 に答える 3

0

これは奇妙です。エラーはソース コードではなく、テキスト ファイルにあることがわかりました。.txt サフィックスがあり、PSPad の標準的なテキスト ファイルのように見えますが、そうではありません: DOS からスクリプトを実行すると、ファイル内の各文字の間に「スペース」があることがわかりました... そこで、16 進エディターで調べました、そしてそれがユニコードファイルであることがわかりました!! 原因はわかりませんが、Excel の .xls ファイルを .txt 形式で保存してファイルを取得しました。

于 2013-06-21T13:47:09.640 に答える
0

ケースの問題だと思います。if "AB" in line.upper()の代わりに試してくださいif "AB" in line

于 2013-06-20T09:09:25.100 に答える