私は Python 2.7 を初めて使用します。Python faker パッケージを使用して、ランダムなテスト データを csv ファイルに書き込もうとしています。ランダムな名の値を「firstNameList」と呼ばれるリスト変数に保存し、次に write_to_csv.writerow(firstNameList) を使用して値を csv に書き込みます。
csv ファイルに書き出される値は |('first_name', u'Monica')| です。
csv で名の値が必要なだけです。例: モニカ 文字列全体は必要ありません |('first_name', u'Monica')| csvで。
もう 1 つの名前変数 firstName1 の値が Loraine であることに気付きました。これを使用すると便利です。しかし、csv に firstName1 を書き込もうとすると、出力は first_name になります。
私のコードは以下です。
csvにいくつかの行を入力したいので、リスト変数に値を保存しています。100 行のランダム データがあるとします。100 個の名前を名前リスト変数に格納すると、for ループを使用してリストをループし、値を csv ファイルに出力できます。次に、住所、メール、電話などについても同じことを行います。
from faker.factory import Factory
import csv
def writeTo_csv(fake):
with open('test.csv', 'wb') as csvfile:
write_to_csv = csv.writer(csvfile, delimiter=' ', quotechar='|', quoting=csv.QUOTE_MINIMAL)
write_to_csv.writerow(['id,', 'TITLE,', 'FNAME,', 'SNAME,', 'GENDER,', 'ADD1,', 'ADD2,', 'ADD3,', 'ADD4,', 'PCODE,', 'PHONE,', 'MOBILE,', 'DOB'])
firstName1 = "first_name"
firstNameList = [(firstName1, getattr(fake, firstName1)())]
print "%s = %s" % (firstName1, getattr(fake, firstName1)())
print firstNameList
write_to_csv.writerow(firstName1)
if __name__ == "__main__":
fake = Factory.create('en_GB')
writeTo_csv(fake)