【问题描述】为了监督饮食质量,食堂向学生发起了一次问卷调查,请大家在“非常满意”、“满意”、“一般”、“不满意”中选择一个评语评价食堂当天的饮食情况,评价结果存在文件“result.txt”中,请编程实现统计各个评语出现的次数,并将统计结果保存到同目录下的"result.csv"文件中。 result.txt 【输入形式】 文件输入(无法预览txt文件,请通过右键复制链接下载) 【输出形式】 保存到result.csv文件中(数据写入的编码格式为gbk)
时间: 2024-02-13 10:02:50 浏览: 119
这是一道文件读写和数据处理的综合题,Python代码如下:
```python
# 打开result.txt文件并读取内容
with open('result.txt', 'r', encoding='utf-8') as f:
lines = f.readlines()
# 统计各个评语出现的次数
counts = {'非常满意': 0, '满意': 0, '一般': 0, '不满意': 0}
for line in lines:
line = line.strip()
if line in counts:
counts[line] += 1
# 将统计结果保存到result.csv文件中
with open('result.csv', 'w', encoding='gbk') as f:
f.write('评语,出现次数\n')
for key, value in counts.items():
f.write(key + ',' + str(value) + '\n')
```
上述代码中,我们首先打开result.txt文件并读取其中的内容,然后统计各个评语出现的次数。为了方便统计,我们使用一个字典counts来存储各个评语出现的次数。接着,我们将统计结果保存到result.csv文件中。需要注意的是,我们需要在写入csv文件之前先写入表头,即“评语,出现次数”,并且需要指定数据写入的编码格式为gbk。
相关问题
对调查问卷结果实现统计,并将结果写入csv文件 【问题描述】为了监督饮食质量,食堂向学生发起了一次问卷调查,请大家在“非常满意”、“满意”、“一般”、“不满意”中选择一个评语评价食堂当天的饮食情况,评价结果存在文件“result.txt”中,请编程实现统计各个评语出现的次数,并将统计结果保存到同目录下的"result.csv"文件中。
好的,下面是代码实现:
```python
import csv
# 读取文件
with open('result.txt', 'r') as f:
data = f.readlines()
# 统计各个评语出现的次数
counts = {'非常满意': 0, '满意': 0, '一般': 0, '不满意': 0}
for line in data:
line = line.strip()
if line in counts:
counts[line] += 1
# 将统计结果保存到csv文件中
with open('result.csv', 'w', newline='') as f:
writer = csv.writer(f)
writer.writerow(['评语', '次数'])
for k, v in counts.items():
writer.writerow([k, v])
```
这段代码首先通过`with open('result.txt', 'r') as f:`将文件打开并读取其中的内容,然后使用一个字典`counts`统计每个评语出现的次数。最后,使用`csv`模块将统计结果写入到`result.csv`文件中。
阅读全文