0
としてpythonで解析私は現在、これは私が私のPythonプログラムは、txn_type
を印刷持つようにしようとしているout.txt
にある以下のデータ読むテキストファイルや辞書
ImmutableOrderedMultiDict([('txn_type', u'subscr_signu'), ('subscr_id', u'123123'), ('last_name', u'nar'), ('residence_country', u'US'), ('mc_currency', u'USD'), ('item_name', u'Upgrade'), ('business', u'[email protected]'), ('amount3', u'5.00'), ('recurring', u'1'), ('verify_sign', u'asdfasdddd'), ('payer_status', u'verified'), ('test_ipn', u'1'), ('payer_email', u'[email protected]'), ('first_name', u'John'), ('receiver_email', u'[email protected]'), ('payer_id', u'1N1nn'), ('reattempt', u'1'), ('charset', u'windows-1252'), ('notify_version', u'3.8'), ('period3', u'1 M'), ('mc_amount3', u'5.00'), ('ipn_track_id', u'123111111111')])
とラインのフルテキストファイルを持っていますただし、@ juanpa.arrivillagaのコメントに掲示したよう TypeError: string indices must be integers, not str
from werkzeug.datastructures import ImmutableOrderedMultiDict
lines = []
with open("out.txt") as f:
for line in f:
try:
lines.append(line)
except:
pass
for i in lines:
print(i['txn_type'])
break
あなたのテキストは単なるテキストです。それを読み込むと、文字列で表されるデータ構造ではなく、 'str'が返されます。また、行に追加するための 'try ... except'はなぜですか?とにかく、そのすべてが 'lines = f.readlines()'に置き換えられる可能性があります。 –
@ juanpa.arrivillagaだから、文字列ではなく文字列に変換することはありますか? – nadermx
あなたは間違ったところで問題を解決しています。なぜそれが最初から始まるようにシリアライズされていますか? – jonrsharpe