我正在尝试使用布尔函数打印从1到100的所有素数.
以下是我正在运行的代码.
for n in range(1,101):
status = True
if n < 2:
status = False
else:
for i in range(2,n):
if n % i == 0:
status = False
if status:
print(n, '', sep=',', end='')
Run Code Online (Sandbox Code Playgroud)
但是当我把代码放在函数和运行模块中时,shell上没有任何打印.我做错了什么?
is_prime():
for n in range(1,101):
status = True
if n < 2:
status = False
else:
for i in range(2,n):
if n % i == 0:
status = False
return status
if is_prime():
print(n, '', sep=',', end='')
Run Code Online (Sandbox Code Playgroud)
以下是该计划的输出.如何防止最后一个逗号打印?
2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,
尝试这个
def is_prime(n):
status = True
if n < 2:
status = False
else:
for i in range(2,n):
if n % i == 0:
status = False
return status
for n in range(1,101):
if is_prime(n):
if n==97:
print n
else:
print n,",",
Run Code Online (Sandbox Code Playgroud)
output 是
2 , 3 , 5 , 7 , 11 , 13 , 17 , 19 , 23 , 29 , 31 , 37 , 41 , 43 , 47 , 53 , 59 , 61 , 67 , 71 , 73 , 79 , 83 , 89 , 97
| 归档时间: |
|
| 查看次数: |
35703 次 |
| 最近记录: |