def is_prime(x):
flag=1
for k in (2,x):
if x % k ==0:
flag=0
break
if flag==1:
return Ture
else:
return False
ls=input("请用户输入一组正整数数据列表:\n")
n=0
s=0
lt=[]
for x in ls:
if is_prime(x)==True:
n=n+1
s=s+1
lt.append(x)
else:
n=n+1
sum=0
for j in lt:
sum=sum+j
print("原数据为:",ls,"共计{}个数据".format(n))
print("其中质数为:",lt,"共计{}个质数".format(s))
print("质数和为:",sum)
它反映出的问题没看懂
Traceback (most recent call last):
File "E:\Python\mypython.py", line 16, in <module>
if is_prime(x)==True:
File "E:\Python\mypython.py", line 4, in is_prime
if x % k ==0:
TypeError: not all arguments converted during string formatting
>>>
input 默认是str的,用int转下