【问题标题】:Learn Python the hard way Exercise 13 error艰难地学习 Python 练习 13 错误
【发布时间】:2014-08-16 19:59:28
【问题描述】:

每次运行此程序时,我都会收到“ValueError:需要超过 1 个变量”。但是我通过运行ex13.py first 2nd 3rd 来执行 Zed 所说的操作。我不需要在文件名之前在终端中输入python,因为我的计算机可以识别python文件。我在 Windows 7 上并使用 python 2.7。任何帮助,将不胜感激。我在这个线程中尝试了最流行的答案:ValueError: need more than 1 value to unpack,但我仍然遇到同样的错误。任何帮助将不胜感激

from sys import argv

script, first, second, third = argv

print "The script is called:", script
print "Your first variable is:", first
print "Your second variable is:", second
print "Your third variable is:", third

编辑:这是我得到的错误:回溯(最近一次通话): 文件“C:\Users\Ian\lpthw\ex13.py”,第 3 行,在 脚本,第一,第二,第三 = argv ValueError: 需要超过 1 个值才能解压

【问题讨论】:

  • 你能复制/粘贴python的整个输出吗?
  • 我将其添加到我的问题中。
  • 我在这里猜测,无论您的计算机如何配置从命令行运行 .py 文件,都没有将其配置为传递命令行参数。您可以尝试显式调用 python 并将脚本和参数传递给它,看看我是否正确?
  • 您的假设似乎是正确的。我按照你说的做了,它返回“'python' 不是内部或外部命令、可运行程序或批处理文件。”
  • @i32505 该线程讨论了在 Windows 上将 Python 添加到路径的方法(如果您使用其他操作系统,请致歉):stackoverflow.com/a/4855685/3651800

标签: python python-2.7


【解决方案1】:

这是 Winston Ewert 在 cmets 中所说的。您必须告诉您的系统python 的位置,否则它将无法正确运行您的脚本。例如,在 Linux/Unix 中,您可以使用指向 python 可执行文件的 shebang 来实现这一点,例如 #!/usr/bin/python,或者只是运行像 python your_script 这样的脚本。尝试像使用python ex13.py first 2nd 3rd 一样从命令运行它,您会发现它可以工作。


正如您在 Windows 上一样,以下是在其上正确配置 Python 的方法:

3.3。 Configuring Python

3.3.1。 Excursus: Setting environment variables

3.3.2。 Finding the Python executable

3.3.3。 Finding modules

3.3.4。 Executing scripts

~Official Documentation

【讨论】:

  • 我尝试运行 python 并在终端中传递参数,但我得到了这个回报:“'python' 不被识别为内部或外部命令、可运行程序或批处理文件。”如何告诉系统 python 在哪里?你的意思是在终端中运行 python 吗?因为在这之前我已经这样做了,而且在运行 .py 文件之前我仍然不需要在终端中输入 python。
  • 你有它! Windows 不知道去哪里找python
【解决方案2】:

您需要使用终端来执行此练习。 假设您的“ex13.py”保存在“桌面”上名为“编码”的文件夹中。

在终端中,首先你需要写: cd desktop

那么,你需要写:cd coding

最后,你会写:python ex13.py first second third

如果您的文件或文件夹或位置不同,请相应更改

【讨论】:

    【解决方案3】:

    这可能是由于从Learn Python the Hard Way PDF 中不正确复制导致的错误。复制代码时,请确保不要同时复制左侧的数字。如果你也复制数字,那可能会导致你的程序崩溃。

    【讨论】:

    • 嘿,罗伯特,谢谢你纠正我的英语。我只是想更像一个朋友。不像 PRO 或专业编码器。谢谢:)
    猜你喜欢
    • 2015-05-01
    • 1970-01-01
    • 2013-04-06
    • 2011-12-04
    • 2016-06-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多