Python重启程序

时间:2018-01-06 17:28:49

标签: python restart python-os

我制作了一个程序,要求你最后重​​启。

@Default @ApplicationScoped public class ConfigurationHandlerImpl implements ConfigurationHandler { @Inject public ConfigurationHandlerImpl(Logger logger, @ConfigurationValue("test.test") String test) { ... } } 并使用import os 但什么都没发生,为什么?

以下是代码:

os.execl(sys.executable, sys.executable, * sys.argv)

3 个答案:

答案 0 :(得分:2)

import os
import sys

restart = input("\nDo you want to restart the program? [y/n] > ")

if restart == "y":
    os.execl(sys.executable, os.path.abspath(__file__), *sys.argv) 
else:
    print("\nThe programm will me closed...")
    sys.exit(0)
  

os.execl(path,arg0,arg1,...)

sys.executable:python可执行

os.path.abspath(__file__):您正在运行的python代码文件。

*sys.argv:剩下的论点

它将再次执行程序,如python XX.py arg1 arg2

答案 1 :(得分:1)

也许os.execv可以工作,但如果您的环境和路径变量设置如下,为什么不直接使用os.system('python "filename.py"')

import os

print("Hello World!")
result=input("\nDo you want to restart the program? [y/n] > ")
if result=='y':
     os.system('python "C:/Users/Desktop/PYTHON BEST/Hackerrank.py"')
else:
     print("\nThe programm will me closed...")

答案 2 :(得分:-3)

os.execv(sys.executable, ['python'] + sys.argv)

解决了这个问题。