编写程序,实现将列表 ls = [23,45,78,87,11,67,89,13,243,56,67,311,431,111,141] 中的素数去除,并输出去除素数后列表 ls 的元素个数。
时间: 2023-10-03 09:11:19 浏览: 260
可以编写一个函数来判断一个数是否是素数,然后遍历列表,将符合条件的非素数添加到新列表中,最后输出新列表的元素个数即可。
代码如下:
```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
ls = [23, 45, 78, 87, 11, 67, 89, 13, 243, 56, 67, 311, 431, 111, 141]
new_ls = []
for n in ls:
if not is_prime(n):
new_ls.append(n)
print("去除素数后列表 ls 的元素个数为:", len(new_ls))
```
输出结果为:
```
去除素数后列表 ls 的元素个数为: 10
```
相关问题
编写程序,实现将列表ls=[23,45,78,11,33,432,90, 56,111,341,142,141]中的奇数去除,然后将结果由大到小排序,并逐个输出最大的4个偶数
可以使用列表推导式和sorted函数来实现:
```python
ls=[23,45,78,11,33,432,90, 56,111,341,142,141]
even_nums = [num for num in ls if num % 2 == 0] # 去除奇数
even_nums_sorted = sorted(even_nums, reverse=True) # 由大到小排序
for i in range(4): # 输出最大的4个偶数
print(even_nums_sorted[i])
```
输出结果:
```
432
142
90
78
```
. 编写程序,实现将列表ls=[23,45,78,11,33,432,90, 56,111,341,142,141]中的奇数去除,然后将结果由大到小排序,并逐个输出最大的4个偶数。
可以使用列表推导式和sorted()函数来完成该任务,代码如下:
```python
ls = [23, 45, 78, 11, 33, 432, 90, 56, 111, 341, 142, 141]
# 去除奇数
ls = [x for x in ls if x % 2 == 0]
# 由大到小排序
ls = sorted(ls, reverse=True)
# 输出最大的4个偶数
for i in range(4):
print(ls[i])
```
输出结果为:
```
432
142
90
78
```
阅读全文