我是编程新手。再试一次。
我已经能够通过更改环境变量使Python从PowerShell运行。当我尝试使用Win+R启动Python时,只有py启动Python。这让我很困惑。PowerShell和cmd只需键入python
就没有问题。
我也在尝试制作它,这样我就可以从任何地方启动python脚本。我在visualstudio代码中制作了一个名为again.py的简单脚本,并将该脚本保存在特定的文件夹中。当我尝试在VSC中运行脚本时,我总是得到错误:
[Running] python -u "c:UsersxyzProgrammingPythonagain.py"
'python' is not recognized as an internal or external command,
operable program or batch file.
[Done] exited with code=1 in 0.137 seconds
根据我的理解,如果Path中包含一个文件夹,并且调用了存储在该文件夹中的文件,则文件/脚本应该运行。我应该可以从任何地方调用该文件,但我无法在PowerShell或Run中键入文件名并使其运行。
win+R退货:
Windows cannot find 'again.py'. Make sure you type the name correctly, and try again.
PowerShell:重新启动.py
start : This command cannot be run due to the error: The system cannot find the file specified.
At line:1 char:1
+ start again.py
+ ~~~~~~~~~~~~~~
+ CategoryInfo : InvalidOperation: (:) [Start-Process], InvalidOperationException
+ FullyQualifiedErrorId : InvalidOperationException,Microsoft.PowerShell.Commands.StartProcessCommand
在cmd中再次键入.py可以使其正常运行。
Powershell错误是由文件名中的空格引起的。Powershell查看输入start again.py
,并像一样对其进行解析
first token on row is word "start"
start is an alias to start-process
second token on row is "again.py"
that will be passed as argument to start-process
最简单的解决方法是避免在文件名中使用空格。请改用下划线或驼色大小写。即startAgain.py
或start_again.py
。一个可以使用空格,但其中涉及额外的引用技巧。更糟糕的是,这些依赖于外壳。Cmd有自己的规则,Powershell有非常不同的规则。既然您正在学习如何编程,请考虑现在专注于Python,稍后再担心shell引用问题。