用python写一段代码 为批量生成随机信息存入CSV文件 批量生成50个人的随机信息,包括姓名,性别、年龄和成绩等。( 提示:c=chr(random.randint(65, 90))可以生成随机大写英文) 1)把生成的信息写入csv文件info.csv。 2)读取info.csv文件,将每一个不及格(成绩小于60)的同学信息存放在以该同学姓名命名的文件中,这些文件使用dat作为扩展名
时间: 2023-06-11 16:08:13 浏览: 49
以下是代码实现:
```python
import csv
import random
# 生成50个人的随机信息
data = []
for i in range(50):
name = ''.join([chr(random.randint(65, 90)) for j in range(6)]) # 生成随机姓名
gender = random.choice(['男', '女']) # 随机性别
age = random.randint(18, 25) # 随机年龄
score = random.randint(0, 100) # 随机成绩
data.append([name, gender, age, score])
# 将信息写入csv文件
with open('info.csv', 'w', newline='') as f:
writer = csv.writer(f)
writer.writerow(['姓名', '性别', '年龄', '成绩'])
for row in data:
writer.writerow(row)
# 读取csv文件,将不及格同学信息存放在以该同学姓名命名的文件中
with open('info.csv', 'r') as f:
reader = csv.reader(f)
next(reader) # 跳过表头
for row in reader:
if int(row[3]) < 60:
name = row[0]
with open(f'{name}.dat', 'w') as file:
file.write(f'姓名:{row[0]}\n性别:{row[1]}\n年龄:{row[2]}\n成绩:{row[3]}')
```
首先用一个循环生成50个人的随机信息,包括姓名、性别、年龄和成绩。然后将这些信息写入csv文件中。
接着读取csv文件,如果某个同学的成绩小于60,就将该同学的信息存放在以其姓名命名的dat文件中。在这里,我们使用csv模块读取csv文件,以及字符串格式化操作来生成文件名及文件内容。