编写一段python代码,设文件 integer.dat中放了一组整数,统计文件中正整数、零和负整数的个数,将统计结果追加到文件 integer.dat的尾部,同时输出到屏幕上。
时间: 2023-06-17 20:03:40 浏览: 189
eg.zip_Q55_统计一组字数据中正数、负数、零的个数。
5星 · 资源好评率100%
假设 integer.dat 文件中每一行都是一个整数,可以按照行读取文件并统计:
```python
# 打开文件进行读写
with open('integer.dat', 'r+') as f:
positive_count = 0 # 正整数计数
zero_count = 0 # 零计数
negative_count = 0 # 负整数计数
for line in f:
num = int(line.strip()) # 去除行末的换行符并转换为整数
if num > 0:
positive_count += 1
elif num == 0:
zero_count += 1
else:
negative_count += 1
# 将统计结果追加到文件尾部
f.write(f"\n正整数个数:{positive_count},零个数:{zero_count},负整数个数:{negative_count}")
# 输出统计结果到屏幕
print(f"正整数个数:{positive_count},零个数:{zero_count},负整数个数:{negative_count}")
```
注意,如果文件中每一行不是一个整数,需要进行额外的处理,例如使用正则表达式匹配整数。另外,在使用 `r+` 模式打开文件时需要小心,因为这种模式下读写指针会定位到文件尾部,需要手动将其移动到文件头部。
阅读全文