我想知道如何重新运行此程序。在成功的过程之后,我希望再次使用这个程序,而无需关闭和重新开启。 我该怎么做? 运行此代码后,它只需打开python窗口并立即关闭它。
def sifra():
retezec = input("Zadejte slovo: ")
print("Zadali jste slovo: ",retezec)
zprava = 0
posun = int(input("Zadejte číslo o kolik se má šifra posouvat: "))
for znak in retezec:
i = ord(znak)
i = i + posun
if (i > ord(z)):
i = i - 26
znak = chr(i)
zprava = zprava + znak
print("Zašfrovaná zpráva: ", zprava)
znovu = input("Znovu? A/N")
if(znovu == "A" or "A"):
sifra()
elif(znovu == "N" or "n"):
sys.exit(0)
else:
pass
此代码工作...打开后,它显示窗口,当我可以输入单词然后它确实凯撒密码,但我没有机会看到结果,因为它关闭如此之快。
retezec = input("Zadejte slovo: ")
print("Zadali jste slovo: ",retezec)
zprava = 0
posun = int(input("Zadejte číslo o kolik se má šifra posouvat: "))
for znak in retezec:
i = ord(znak)
i = i + posun
if (i > ord(z)):
i = i - 26
znak = chr(i)
zprava = zprava + znak
print("Zašfrovaná zpráva: ", zprava)
那么如何让这段代码可以重复使用呢?
编辑:当我在cmd中运行它时会说:NameError:名称'z'未定义
答案 0 :(得分:0)
您可能只需要让程序窗口保持打开状态,直到您可以检查结果。但是你的问题是在程序到达结束后继续运行程序,所以这就是答案:
打开Windows命令窗口(“CMD提示”)。
通过显式调用python解释器运行程序,并添加-i
标志:
C:\> python -i program.py
程序运行并到达脚本末尾后,您将获得一个可以访问所有变量的交互式提示。您现在可以对环境执行任何操作,例如,重新运行sifra()
。
另一种方法:使用IDLE,python的默认编辑器打开你的程序,然后在解释器窗口中运行它。效果会一样。
答案 1 :(得分:0)
问题出现在变量zprava的类型中..应该是zprava =“”而不是zprava = 0 并且在if(i> ord(z))中缺少引号: - > if(i> ord(“z”)):
但有一件事仍然无效就是结束程序..为什么sys.exit()不起作用?