使用Python程序创建并运行Python程序

时间:2014-09-24 18:40:00

标签: python file

这是我第一次使用Python而我正在尝试创建一个可以:

的程序
  1. 在IDLE中创建一个新的Python程序
  2. 让新程序包含打印命令 - print('Hello,world!')
  3. 保存程序并运行它
  4. 退出IDLE
  5. 这是我到目前为止的代码。它似乎没有创建文件,我可能犯了一些我不知道的其他错误。

    import sys
    
    name = input('C:\\MyFolder\\program.py')
    
    //Create program containing print command
    file = open(name, 'w')
    file.write("print('Hello, world!')")
    file.close()
    
    //Run program (and possibly save it?)
    os.system('C:\\MyFolder\\program.py')
    
    //Exit IDLE
    sys.exit(0)
    

    如何创建,编写和运行新程序?

1 个答案:

答案 0 :(得分:0)

虽然你的问题并不完全清楚,但我想我知道你的问题是什么。

首先,当您执行input('C:\\MyFolder\\program.py')时,C:\\MyFolder\\program.py只是显示给用户的提示。它不是默认值。因此,如果用户刚刚返回,则name将为空,并且您无法成功创建文件。

其次,即使用户确实输入了某些内容,除非他输入的内容正是C:\\MyFolder\\program.py,否则您要创建一个具有一个名称的文件,然后尝试运行具有不同名称的文件,该文件不是#39;去上班。

所以,你可能想要这样的东西:

default_name = 'C:\\MyFolder\\program.py'
name = input(default_name)
if not name:
    name = default_name

# ... your existing code to create the file

os.system(name)

有很多方法可以改善这一点(将subprocess.check_callsys.executable一起使用,在文件中添加一个shbang行,使用with语句而不是显式{{1} },使提示看起来像close而不是默认值,...)。但这应该足以让它发挥作用。