2016-06-20 6 views
0

ユーザーのデータ入力に応じて動的に変化する長さのリストを含むCSVファイルを作成しようとしています。私はリストを印刷しても問題ありませんが、上にヘッダー行を置く必要があります。Python CSV - 変数に基づく動的な行数

世代:1,2,3,4,5、など

私は、ユーザーによって設定された世代数の変数を持っています。これはnumGens()と呼ばれています。これを使って正しい見出し数を書くことができますか? 最初のフィールドは "Generation:"でなければなりません。適切な世代数がカウントアップされます。

私は自分自身を繰り返すと申し訳ありません!ありがとう。

EDIT - 関連コードを追加しました!

def exportData(): 
    #naming and namecheck here 
    with open('testthing.csv','w', newline='') as csvfile: 
      spamwriter = csv.writer(csvfile, delimiter=' ', 
            quotechar='|', quoting=csv.QUOTE_MINIMAL) 
      spamwriter.writerow(["Generation:",]) 
      spamwriter.writerow(["Juveniles:", juvOverGens]) 
      spamwriter.writerow(["Adults:", juvOverGens]) 
      spamwriter.writerow(["Seniles", juvOverGens]) 

juvOverGensは(と大人とSenilesのための別の名前があるように意図されているが、それらは常に同じ長さになるので、それは無関係です)どこでも長さは5と25の間の値であるリストです。

+1

あなたは私たちがあなたが近づくあなたの問題の解決に来る助けるため関連性があると思うのコードを追加してください - これは、多くの場合、言葉申し訳ありません;-) – Dilettant

+1

でそれを記述するよりも、単純です。今すぐ追加しました。 – CrackersL01

+0

あなたが話しているデータの種類のサンプルと、このヘッダー行がどのようにフォーマットに関連しているかを表示できますか? – BrenBarn

答えて

0
import csv 

numGens = 4 

header = ['Generation:'] 

for n in range(numGens): 
    header.append(str(n + 1)) 

with open('testthing.csv', 'w', newline='') as csvfile: 
    spamwriter = csv.writer(csvfile, delimiter=',', 
          quotechar='|', quoting=csv.QUOTE_MINIMAL) 
    spamwriter.writerow(header) 
+0

私はそれをテストしたところ、次のエラーが表示されます:exportDataの行89、範囲内のn(numGens)の : TypeError: 'function'オブジェクトは整数として解釈されません – CrackersL01

+0

それを示す。 – Chris