python一串数,当输入0时结束,输出其中大于0的数?

如题所述

可以使用 while 循环和条件判断语句实现这个功能。具体来说,可以在循环中反复读取输入的数值,直到遇到 0 为止。每次读取一个数值后,判断其是否大于 0,如果是,则输出该数值。

以下是一个示例代码,演示了如何实现上述功能:

```python
numbers = []
while True:
value = int(input("请输入一个数字(输入 0 结束):"))
if value == 0:
break
elif value > 0:
numbers.append(value)

print("大于 0 的数字有:", numbers)
```

在这个示例中,我们首先创建了一个空列表 `numbers`,用于存储输入的大于 0 的数值。然后,在一个无限循环中调用 `input()` 函数读取用户输入的数值,并使用 `int()` 函数将其转换成整数类型。如果用户输入的数值为 0,就使用 `break` 语句跳出循环;如果数值大于 0,就把它添加到 `numbers` 列表中。

最后,使用 `print()` 函数输出所有大于 0 的数值。

需要注意的是,在输入数值时,应确保用户输入的是合法的整数。如果用户输入的字符串无法转换成整数类型,程序就会抛出异常并终止运行。因此,建议在读取输入之前进行一些基本的输入验证,例如检查用户输入的字符串是否为空或是否包含非数字字符等。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2023-02-11
numbers = []
while True:
num = int(input("请输入一个数:"))
if num == 0:
break
if num > 0:
numbers.append(num)
print("大于0的数:", numbers)
在这段代码中,使用了一个空的列表 numbers 存储大于 0 的数。每次读入一个数,如果它等于 0,就退出循环;如果它大于 0,就加入列表中。最后,我们输出了这个列表。
第2个回答  2023-01-28
while True:
num = int(input("请输入一个数:"))
if num == 0:
break
elif num > 0:
print(num)
相似回答