このタイプの大量のデータがあります。
array(14) {
["ap_id"]=>
string(5) "22755"
["user_id"]=>
string(4) "8872"
["exam_type"]=>
string(32) "PV Technical Sales Certification"
["cert_no"]=>
string(12) "PVTS081112-2"
["explevel"]=>
string(1) "0"
["public_state"]=>
string(2) "NY"
["public_zip"]=>
string(5) "11790"
["email"]=>
string(19) "ivorabey@zeroeh.com"
["full_name"]=>
string(15) "Ivor Abeysekera"
["org_name"]=>
string(21) "Zero Energy Homes LLC"
["org_website"]=>
string(14) "www.zeroeh.com"
["city"]=>
string(11) "Stony Brook"
["state"]=>
string(2) "NY"
["zip"]=>
string(5) "11790"
}
ファイルを読み取り、各配列の辞書を作成し、次のように要素を格納する for ループを Python で作成しました。
a = 0
data = [{}]
with open( "mess.txt" ) as messy:
lines = messy.readlines()
for i in range( 1, len(lines) ):
line = lines[i]
if "public_state" in line:
data[a]['state'] = lines[i + 1]
elif "public_zip" in line:
data[a]['zip'] = lines[i + 1]
elif "email" in line:
data[a]['email'] = lines[i + 1]
elif "full_name" in line:
data[a]['contact'] = lines[i + 1]
elif "org_name" in line:
data[a]['name'] = lines[i + 1]
elif "org_website" in line:
data[a]['website'] = lines[i + 1]
elif "city" in line:
data[a]['city'] = lines[i + 1]
elif "}" in line:
a += 1
data.append({})
私のコードがひどいものであることはわかっていますが、Python についてはまったくの初心者です。ご覧のとおり、私のプロジェクトの大部分は完了しています。残っているのは、実際のデータからコード タグを取り除くことです。たとえば、私はstring(15) "Ivor Abeysekera"
なる必要がありIvor Abeysekera"
ます。
いろいろ調べて考え.lstrip()
たのですが、前の文章がいつも違うので..行き詰りました。
誰かがこの問題を解決する賢い方法を持っていますか? 乾杯!
編集: Windows 7 で Python 2.7 を使用しています。