2016-11-02 5 views
0

私は、ウィキポータブルな形式のmediawikiユーザー統計をSQLクエリによって生成しました。 ここでは、最初の列とすべての行にあるすべての#を、自動増分数、つまり1,2,3,4の最初の行からpythonスクリプトを使用して置き換えます。Pythonを使用したWikitableの自動インクリメント

どのようにこのタスクを達成するためのアイデアですか? wikitable形式で

データ:

matter = """{| class="wikitable" 
!number!!user_id!!user_name!!byte_count!!edit_count 
|- 
|#||19745||[[user:abc|abc]]||37294210.0||83282 
|- 
|#||21818||[[user:abc|abc]]||3420248.0||121794 
|- 
|#||21548||[[user:abc|abc]]||2515274.0||32799 
|}""" 

with open("wikit.txt", 'w') as f: 
    f.write(matter) 

with open('wikit.txt', 'r') as f: 
    m = f.read() 

print(m) 

答えて

0

がテストしていませんが、それは動作するはずですあなたのための

with open('wikit.txt', 'r') as f: 
     lines = f.readlines() 
    newlines =[] 
    line_num=1 
    for line in lines: 
     newlines.append(line.replace("#",str(line_num))) 
     if "#" in line: 
      line_num+=1 

    newlines_str='\n'.join(line for line in newlines) 

    with open("wikit.txt", 'w') as f: 
     f.write(newlines_str) 
+0

今: 'TypeError例外:書き込み()の引数は – Yethrosh

+1

更新list'ない、をstrされなければなりませんもう一度。 – Illusionist

+0

これは、必要に応じて機能し、多くの努力をいただきありがとうございます。 :) – Yethrosh

関連する問題