无法执行Python脚本

时间:2017-03-27 03:47:27

标签: python terminal execution

我正在通过'使用Python自动化无聊的东西'来学习Python,并且我坚持能够执行我的程序。我将我的Python安装目录添加到我的系统环境变量中(见下文)。当我从终端运行'py'或'python'时,它会打开Python窗口。但是,当我尝试通过键入'py pw.py'或'python pw.py'来运行特定程序(例如,名为pw.py)时,没有任何反应。我的程序中有一个shebang行(#!python3)。看起来窗口很快就会试图出现,但之后什么都没有。有什么想法吗?

以下是该计划:

#! python3
PASSWORDS = {'email': 'F7minlBDDuvMJuxESSKHFhTxFtjVB6','blog':'VmALvQyKAxiVH5G8v0lif1MLZF3sdt','luggage': '12345'}
import sys, pyperclip
if len(sys.argv) <2:
    print('Usage: python pw.py[account] -  copy account password')
    sys.exit()

account = sys.argv[1]  #first command line arg is the account name

if account in PASSWORDS:
    pyperclip.copy(PASSWORDS[account])
    print ('Password for ' + account + ' copied to clipboard.')
else:
    print ('There is no account named ' + account)

添加路径

Using Admin Command Prompt (some of these are typos - hit enter too fast)

3 个答案:

答案 0 :(得分:0)

看起来问题不在于您的&#34;路径&#34;。这是你执行文件的方式。

理想情况下,它应该是,

  

python [python-file-name] .py [command-line-arguments]

就我而言,是,

  

python test.py email

在你的情况下,

  

python [your_file_name.py] [email | blog | luggage]

在两个用例

中,这在我的命令行和IDE中都很有魅力

即使用和不使用命令行参数。只要检查一下你是否给它正确的方式

Screen shot of my execution

其他信息:

从屏幕截图中,我看到你正在使用Windows 10(如果我错了,请纠正我)。在Windows 10中,您有2个命令提示符。

  1. 一个是普通用户
  2. 另一个处于管理员模式。
  3. python不会在常规命令提示符上启动。

    我认为您正在使用常规模式命令提示符。请使用命令提示符和admin access。

    检查this链接,了解如何以管理员身份打开cmd提示符。我想你也可以通过右键单击Windows图标打开。

    如果您仍想使用常规cmd提示,您也可以尝试使用python -i(交互模式)

答案 1 :(得分:0)

当我在同一本书中看到这个例子时,这让我感到很奇怪,我认为这是一次性的,但他一直在使用它们。书中的shebang线错了。它应该是这样的:

TRUE

#!/usr/bin/env python3

或者你的完整路径是python3。

一个shebang线必须是#!然后是空格,然后是正斜杠。没有路径名扩展来查找解释器(env或python3),因此您必须指定完整路径。没有完整路径的空间和翻译名称只是不起作用。在本书末尾的附录B中,有一个简短的部分解释了如何正确设置shebang线,但这是在本书的最后。他确实在第一个例子中提到过它,但作为一本初学者书,我确信这会让很多人失望。

在附录B中他很奇怪地说:

  

在Windows上,shebang行是#! python3。

这反映了书中的用法,但据我所知,shebang系列在Windows中没有任何效果。如果我错了,有人会纠正我。我认为这本书应该使用#!/ usr / bin / env python3来节省混淆。

答案 2 :(得分:0)

我的问题喜欢你的,但这就是我尝试过的,而且很有效。

首先,在CMD中,从任何路径,您都可以通过键入python

来启动Python

喜欢:

c:\>python

这意味着您的Windows路径正确。

其次,尝试将文件夹目录更改为python代码文件夹,在我的例子中,它是c:\ my documents \ PythonCode。命令是:

cd "My Documents"\PythonCode

在此cmd之后,它应该看起来像

C:\My Documents\PythonCode>

最后,输入

python test.py

这应该执行你的py脚本。

所以,在你的情况下,你可以试试这个:

c: 
cd c:\"Python Scripts"
python pw.py email

第一行将您的目录设置为c drive 第二行将您的目录设置为Python Scripts文件夹 第三行执行你的pw.py脚本。