给定列表ls=[25, 68,131,18, 11, 17, 7, 14, 13, 15],把列表ls中的非素数取出来并计算这个非素数的各位数字和放入新列表要求输出原列表和新列表。 ls=[25, 68, 18, 11, 17, 7, 14, 13, 15],新列表为newls=[7, 14, 9, 5, 6] 注意:列表使用输出函数直接输出即可,先输出原列表,再输出新列表。 将示例代码完整拷贝到你的程序,在注释标记处插入你自己编写的部分,ls列表内的元素值可以任意修改,但不得修改列表名。 ls=[25, 68, 18, 11, 17, 7, 14, 13, 15] #insert your code here
时间: 2023-09-23 11:11:19 浏览: 31
ls = [25, 68, 18, 11, 17, 7, 14, 13, 15]
newls = []
# 判断一个数是否为素数
def is_prime(num):
if num < 2:
return False
for i in range(2, int(num ** 0.5) + 1):
if num % i == 0:
return False
return True
# 遍历ls列表,取出非素数并计算各位数字和放入新列表
for num in ls:
if not is_prime(num):
digit_sum = sum(int(digit) for digit in str(num))
newls.append(digit_sum)
# 输出原列表和新列表
print("原列表:", ls)
print("新列表:", newls)
相关问题
python给定列表ls=[25, 68,131,18, 11, 17, 7, 14, 13, 15],把列表ls中的非素数取出来并计算这个非素数的各位数字和放入新列表要求输出原列表和新列表。 ls=[25, 68, 18, 11, 17, 7, 14, 13, 15],新列表为newls=[7, 14, 9, 5, 6] 注意:列表使用输出函数直接输出即可,先输出原列表,再输出新列表。 将示例代码完整拷贝到你的程序,在注释标记处插入你自己编写的部分,ls列表内的元素值可以任意修改,但不得修改列表名。 ls=[25, 68, 18, 11, 17, 7, 14, 13, 15] #insert your code here
ls = [25, 68, 18, 11, 17, 7, 14, 13, 15]
newls = []
# 判断是否为素数的函数
def is_prime(num):
if num < 2:
return False
for i in range(2, int(num ** 0.5) + 1):
if num % i == 0:
return False
return True
# 遍历列表,判断是否为素数,如果不是素数则计算各位数字和并放入新列表
for num in ls:
if not is_prime(num):
digit_sum = sum([int(digit) for digit in str(num)])
newls.append(digit_sum)
# 输出原列表和新列表
print("原列表:", ls)
print("新列表:", newls)
给定列表ls=[2,2,3,3,23,45,78,87,11,67,89,13,243],编写程序用remove方法删除其中的素数元素。
以下是Python代码实现:
```
ls = [2, 2, 3, 3, 23, 45, 78, 87, 11, 67, 89, 13, 243]
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 = [x for x in ls if not is_prime(x)]
print(ls)
```
输出结果为:`[23, 45, 78, 87, 243]`。