Python.假设文件num.txt中存放了一组整数,统计文件中正数、零、负数的个数,并输出统计结果。(注:可以先用记事本程序创建num.txt文件,并输入一些数据)
时间: 2023-12-03 11:47:36 浏览: 278
可以使用以下代码实现:
```python
with open('num.txt', 'r') as file:
content = file.read()
nums = list(map(int, content.split()))
positive_count = 0
zero_count = 0
negative_count = 0
for num in nums:
if num > 0:
positive_count += 1
elif num == 0:
zero_count += 1
else:
negative_count += 1
print("正数个数:", positive_count)
print("零的个数:", zero_count)
print("负数个数:", negative_count)
```
首先使用 `open` 函数打开 `num.txt` 文件,并读取其中的内容。然后将文件中的整数转换为一个列表 `nums`。
接着使用三个计数器变量 `positive_count`、`zero_count` 和 `negative_count` 统计正数、零和负数的个数,遍历 `nums` 列表中的每个数字,根据数字的正负性分别增加对应计数器的值。
最后输出三种数字的个数即可。
相关问题
假设文件num.txt存放了一组整数,统计文件中正数,负数,零的个数并输出统计结果python
可以使用Python的文件操作和条件语句来实现该功能,代码如下:
```python
pos_count = 0 # 记录正数个数
neg_count = 0 # 记录负数个数
zero_count = 0 # 记录零的个数
with open('num.txt', 'r') as f:
for line in f:
num = int(line.strip()) # 将字符串转换为整数
if num > 0:
pos_count += 1
elif num < 0:
neg_count += 1
else:
zero_count += 1
print("正数个数:", pos_count)
print("负数个数:", neg_count)
print("零的个数:", zero_count)
```
首先定义三个变量`pos_count`、`neg_count`和`zero_count`,分别用于记录正数、负数和零的个数,初始值均为0。
然后使用`with open('num.txt', 'r') as f:`打开文件`num.txt`,并循环读取每一行内容。由于从文件中读取的内容是字符串类型,需要使用`int()`函数将其转换为整数类型。
接着使用条件语句判断每个数的正负性以及是否为零,并分别累加到对应的计数器中。
最后输出正数、负数和零的个数即可。
Python编写假设文件num.txt中存放了一组整数,统计文件中正数、零、负数的个数,并输出统计结果。(注:可以先用记事本程序创建num.txt文件,并输入一些数据)
好的,下面是 Python 编写的统计 num.txt 文件中正数、零、负数个数的程序:
```python
with open('num.txt', 'r') as f:
nums = [int(line.strip()) for line in f.readlines()]
pos_count = len([x for x in nums if x > 0]) # 统计正数个数
zero_count = len([x for x in nums if x == 0]) # 统计零的个数
neg_count = len([x for x in nums if x < 0]) # 统计负数个数
print(f"正数个数:{pos_count}")
print(f"零的个数:{zero_count}")
print(f"负数个数:{neg_count}")
```
首先使用 `with open('num.txt', 'r') as f` 打开 num.txt 文件,并读取其中所有行,并使用 `int(line.strip())` 将每行的字符串转换为整数,并存入一个列表 nums 中。然后使用列表推导式统计 nums 中大于 0 的数的个数,得到正数个数;统计 nums 中等于 0 的数的个数,得到零的个数;统计 nums 中小于 0 的数的个数,得到负数个数。最后输出统计结果。
例如,如果 num.txt 文件中包含以下数据:
```
1
-2
3
0
-4
```
则运行上述程序,输出结果为:
```
正数个数:2
零的个数:1
负数个数:2
```
阅读全文