话不多说,代码如下:
from faker import Faker
import random
def faker_cardnum_n(n): # 产生n位随机号码
str_numb = ""
for i in range(n):
ram = random.randrange(1, 10)
str_numb = str_numb + str(ram)
return str_numb
bank_name = ['中国工商银行', '中国建设银行', '中国农业银行', '中国交通银行']
bank_type = [1, 2]
fake = Faker(locale="zh_CN") # 选择中文
count = 2000 # 造‘count’条数据
faker = ["用户名,密码,确认密码,姓名,身份证号,支付密码,手机号,邮箱,银行,银行卡类型,银行卡号"] # 表头
for i in range(count):
username = fake.unique.user_name()
password = 'e10adc3949ba59abbe56e057f20f883e' # MD5加密后的密码
repassword = 'e10adc3949ba59abbe56e057f20f883e'
realname = fake.unique.name()
idcard = fake.unique.ssn()
paypwd = 666666
phone = fake.unique.phone_number()
email = fake.unique.safe_email()
while len(email) > 20:
email = fake.unique.safe_email()
bankcard = random.choices(bank_name)[0]
cardtype = random.choices(bank_type)[0]
cardnum = faker_cardnum_n(16) # 16位银行卡号
fak = [username, password, repassword, realname, idcard, paypwd, phone, email, bankcard, cardtype, cardnum]
faker.append(fak) # 插入新造的数据
def save_list_to_txt(my_list, filename):
with open(filename, 'w') as file:
for sublist in my_list:
line = ','.join(str(element) for element in sublist)
file.write(line + '\n')
filename = 'D:/test_files/user_info2.txt' # 写入TXT文件位置
save_list_to_txt(faker, filename)