4

我正在尝试学习 python,但在从 power shell 运行源文件时遇到了一些问题。当我输入“python”时,它会打开,我可以直接在 shell 中输入 python 命令。我认为这称为交互模式。但是当我尝试运行/执行源文件时,我收到一条错误消息:它sayys:语法错误:无效语法。

当我尝试执行脚本时,我使用“python myfile.py”。

如果我从 IDLE 运行相同的文件,它就可以正常工作。安娜知道我做错了什么?

这是 myfile.py。我正在运行 python 2.7

 # filename: myfile.py

while True:
      s = raw_input('Enter something: ')
      if s == 'Quit':
          break
      print 'Lenght of the string is', len(s)
print 'Done'
4

6 回答 6

3

您可能安装了多个版本的 Python,并且 IDLE 使用的版本更新。要查看您拥有的 python 版本,您可以>python -V在命令行中键入。如果该版本看起来合适,那么您可能需要文件的完整路径作为第二个参数。例如>python C:\myfile.py

如果你正确安装了 Python,那么只要输入脚本的名称,就有可能使用 python 运行它。例如>myfile.py

我总是发现添加C:\Python27%PATH%变量和变量中可以更轻松.PY%PATHEXT%运行脚本。在这种情况下>myfile应该可以工作。

更新后编辑

仅在不带参数的情况下键入>python会以“交互模式”打开 python,这与脚本所针对的批处理或脚本模式不同。如果使用参数执行,则第一个参数将作为文件路径,而其他参数将传递给sys.argv列表中的脚本。

于 2012-04-25T19:07:55.317 回答
2

您需要将 Python 可执行文件的完整路径放在命令行中才能使其工作。您可以检查并确保您的 python exe 包含在您的路径中的系统变量中。

于 2012-04-25T19:55:49.020 回答
1

免责声明:我不知道 PowerShell,但我知道 cmd.exe。

我不知道为什么python myfile.py不工作,但假设 PowerShell 至少与 cmd.exe 有一些相似之处,以下应该可能工作:myfile.py. 没错,只需输入 Python 脚本的名称并回车即可。

于 2012-04-25T19:02:58.733 回答
0

如果您从输入“ python”开始,powershell您将需要退出该脚本。

如果你是 python 类型:

quit() 然后输入 python myfile.py

如果您的 python 安装正确,这应该可以工作。

于 2013-12-06T06:27:49.900 回答
0

尝试在 Powershell 中输入:

$env:path="$env:Path;C:\Python33

在此之后,命令

python yourfile.py

应该管用。

于 2013-12-23T17:36:35.737 回答
0

这听起来很傻,尤其是来自初学者。

只需将文件保存在桌面上即可。打开powershell并将文件直接拖到powershell中即可打开。有点乏味,但它有效

于 2014-04-02T01:21:13.537 回答