我尝试打印出用户输入的两个数字之间的所有质数。我可以打印出分隔符,但我正在为如何打印多个分隔符而苦苦挣扎,然后重复,直到打印完所有质数。例如,分隔符是“冒号,感叹号,逗号”。查找如下内容: 7:11!13,17:19!23
num_1 = int(input("Enter your first number: "));
num_2 = int(input("Enter your second number: "));
num_3 = 0
if num_2 > num_1:
num_3 = num_1
num_1 = num_2
num_2 = num_3
for num in range(num_1, num_2 +1):
if num > 1:
for i in range(2,num):
if (num%i) == 0:
break
else:
print(num, sep="", end=","
发布于 2018-09-12 07:39:55
num_1 = int(input("Enter your first number: "));
num_2 = int(input("Enter your second number: "));
num_3 = 0
if num_2 > num_1:
num_3 = num_1
num_1 = num_2
num_2 = num_3
ite_list = [":","!",","]
outa = []
for num in range(num_1, num_2 +1):
if num > 1:
for i in range(2,num):
if (num%i) == 0:
break
else:
outa.append(str(num) + ite_list[len(outa)%3])
outa = "".join(outa)
print(outa)
像这样吗?
发布于 2018-09-12 07:42:40
您可以使用itertools.cycle()
例如:
import itertools
my_delimiters = itertools.cycle(":!,.")
# rest of the code
print(num, end=next(my_delimiters))
https://stackoverflow.com/questions/52285442
复制相似问题