Python编写程序 求列表l中所有素数的和
时间: 2024-03-01 12:54:16 浏览: 17
可以使用以下代码来求列表 `l` 中所有素数的和:
```python
def is_prime(n):
"""判断一个数是否为素数"""
if n <= 1:
return False
for i in range(2, int(n ** 0.5) + 1):
if n % i == 0:
return False
return True
l = [2, 3, 5, 7, 11, 13] # 示例列表
prime_sum = sum(filter(is_prime, l))
print(prime_sum) # 输出所有素数的和
```
在上述代码中,首先定义了一个 `is_prime` 函数用于判断一个数是否为素数。然后使用 `filter` 函数过滤出列表 `l` 中的所有素数,最后使用 `sum` 函数求和即可。
相关问题
请编写程序:求列表L中所有素数的和
以下是 Python 代码实现:
```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
def sum_of_primes(L):
"""
求列表L中所有素数的和
"""
return sum([x for x in L if is_prime(x)])
```
首先定义一个 `is_prime` 函数来判断一个数是否为素数。对于一个大于等于 2 的数 n,判断其是否为素数,只需要从 2 到 $\sqrt{n}$ 进行枚举,如果存在一个小于等于 $\sqrt{n}$ 的因子,那么 n 就不是素数。
然后定义一个 `sum_of_primes` 函数来求列表 L 中所有素数的和,它使用了列表推导式和 `sum` 函数,遍历列表 L 中的每个元素 x,如果 x 是素数,则将其加入到一个新的列表中,最后使用 `sum` 函数求出新列表中所有元素的和并返回。
Python 编写程序,删除列表中所有的素数
以下是 Python 的代码,它将从给定列表中删除所有的素数:
```Python
def is_prime(n):
if n <= 1:
return False
for i in range(2, int(n ** 0.5) + 1):
if n % i == 0:
return False
return True
def delete_primes(lst):
lst[:] = [num for num in lst if not is_prime(num)]
```
你可以通过调用 `delete_primes(lst)` 函数来删除列表 `lst` 中的所有素数。