我写了一个程序来生成一个极限的素数;它工作,但每当我启动程序本身,它在Python命令行中打开,它关闭它完成运行的第二个。我添加了
print('Press enter to exit.')
在程序结束时和其他程序中,这会阻止它关闭,但无论如何这都会关闭。 该计划完整:
from __future__ import division
import math
def isprime(n):
x = 2
while(x >= 2 and x <= n**0.5):
if n%x == 0:
return False
x += 1
return True
print('Enter an upper bound.')
y = input()
print('Would you like place numbers? Y/N')
b = raw_input()
if b == 'Y' or b == 'y':
a = 0
elif b == 'N' or b == 'n':
a = 1
else:
print('Error. Enter Y or N.')
i = 2
c = 1
while(a == 1 and i <= y):
if isprime(i) == True:
print(i)
c += 1
i += 1
while(a == 0 and i <= y):
if isprime(i) == True:
print('Prime number ' + str(c) + '-->' + str(i))
c += 1
i += 1
print(str(c) + ' primes in total were generated between 0 and' + str(y))
print('Press enter to exit.')
注意:我宁愿你帮我阻止它关闭。
答案 0 :(得分:3)
python“print”函数显示文本,但不会停止程序执行。 所以解释器打印这一行,但是在程序停止之后,因为没有更多的指令。
在许多操作系统上,当命令行程序完成时,控制台窗口立即关闭。
但实际上,如果您改为编写raw_input("press enter to exit")
,它将不会关闭,因为“输入”功能会等待用户输入,因此程序会暂停,直到用户按下回车键。
我希望它回答了这个问题
`
答案 1 :(得分:1)
我认为你的意思是
input("Press enter to exit")
不是print(...)