Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/289.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python中的空闲编辑器在我不保存代码时不会运行代码_Python_Python Idle - Fatal编程技术网

Python中的空闲编辑器在我不保存代码时不会运行代码

Python中的空闲编辑器在我不保存代码时不会运行代码,python,python-idle,Python,Python Idle,我已经在空闲的新文件窗口中编写了代码 当我运行代码时,没有输出。 相反,会出现一个对话框,显示一个访问Python文件夹37-32的窗口 当我关闭对话框和文件时,我试图在下面创建一个新的简单代码,但当我运行代码时,我得到了相同的对话框 怎么了 sum = 2+3 print(sum) 我附上了一个屏幕截图,显示了运行模块时出现的代码和对话框。在执行代码之前,首先需要保存文件。这就是弹出的对话框。您应该看到下面这样的弹出框。是吗?这是不清楚的吗 Save Before Run or Check

我已经在空闲的新文件窗口中编写了代码

当我运行代码时,没有输出。 相反,会出现一个对话框,显示一个访问Python文件夹37-32的窗口

当我关闭对话框和文件时,我试图在下面创建一个新的简单代码,但当我运行代码时,我得到了相同的对话框

怎么了

sum = 2+3 print(sum) 

我附上了一个屏幕截图,显示了运行模块时出现的代码和对话框。在执行代码之前,首先需要保存文件。这就是弹出的对话框。

您应该看到下面这样的弹出框。是吗?这是不清楚的吗

Save Before Run or Check
?  Source Must Be Saved
    OK to Save?
  [OK]    [Cancel]
需要保存的一个原因是异常回溯指导致异常的文件和行

如果您已保存,
sum=2+3打印(sum)
将是一个语法错误

您可以在Shell中运行单个语句,而无需保存

重新启动行表示shell重新初始化了执行代码的环境

通常不应将代码保存在安装脚本目录中。最好在用户目录中创建一个目录,例如C:/Users/yourname/py/


是的,一个人通常应该为不相关的问题打开一个新问题。但如果无法访问您的机器,就很难知道“新”发生了什么。可能IDLE可以在
../appdate/../Scripts/
下创建文件,但您的代码不能。如果open调用没有引发异常,那么它很可能是在某个地方创建的。在您更有经验之前,最好使用绝对路径,例如
C:/Users/yourname/py/new.txt

问题中的详细信息不足。密码?屏幕截图?另外,不要关闭对话框,选择保存位置,然后单击保存。谢谢伙计们,我将文件保存在脚本文件夹中。我把它命名为“实践”。然后我尝试使用open('practice')打开它,但我得到一个错误,说没有这样的文件或目录。这是为什么?IDLE只是一个文本编辑器。它不能自己执行任何代码。它首先需要保存文件。这就是对话框的位置。然后可以使用IDLE的run函数执行代码。它基本上是对python说,嘿,请运行这段代码。因此,请按照您在问题中所做的那样运行正确的代码。IDLE会告诉Python执行您的代码。在保存文件的同一文件夹中,会弹出一个名为hello.txt的新文件,正如您自己编写的。好的,打开名为practice的文件后,我将其代码更改为this open('new','w+')。然后我选择了跑步。我得到了这个答案:C:\Users\Me\AppData\Local\Programs\Python\Python37-32\Scripts\practice.py。我检查了脚本文件夹,没有创建名为“new”的文件。为什么?我应该问一个新问题吗?