python输入整数构建列表,要求输入的时候,每输入一个整数之后要有是否继续输入的提示(y或n),根据用户选择继续输入或结束输入。然后将列表中的素数存入到一个新列表new中,将列表new中的元素降序排序后输出。
时间: 2024-03-24 13:41:57 浏览: 16
py代码-输入一个包含若干自然数的列表,输出这些自然数降序排列后的新列表。例如输入[9,7,8,3,2,1,55,6],输出[55, 9, 8, 7, 6, 3, 2, 1]。
好的,可以使用以下代码实现:
```python
def is_prime(n):
"""
判断是否为素数
"""
if n < 2:
return False
for i in range(2, int(n ** 0.5) + 1):
if n % i == 0:
return False
return True
nums = []
while True:
num = int(input("请输入一个整数:"))
nums.append(num)
choice = input("是否继续输入?(y/n) ")
if choice == 'n':
break
primes = [num for num in nums if is_prime(num)]
new = sorted(primes, reverse=True)
print(new)
```
运行效果如下:
```
请输入一个整数:4
是否继续输入?(y/n) y
请输入一个整数:5
是否继续输入?(y/n) y
请输入一个整数:7
是否继续输入?(y/n) y
请输入一个整数:10
是否继续输入?(y/n) n
[7, 5]
```
注意:此处假定用户输入的都是整数,如果用户输入的不是整数,程序会抛出异常。如果需要进行更严格的输入检查,可以使用 `try-except` 块进行异常处理。
阅读全文