我是 Python 2.7 的新手,我正在尝试使用 Python faker 包将一些随机测试数据写入 csv 文件。我已将随机名字值存储到名为“firstNameList”的列表变量中,然后使用 write_to_csv.writerow(firstNameList) 将该值写入 csv
写入 csv 文件的值为 |('first_name', u'Monica')|
我只想要 csv 中的名字值,例如 Monica 我不想要整个字符串 |('first_name', u'Monica')| 在 .csv 中。
我注意到我的另一个名字变量 firstName1 的值为 Loraine 这个变量非常好用。但是当我尝试将 firstName1 写入 csv 时,输出是 first_name
我的代码如下。
我将值存储在 List 变量中,因为我想在 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)