J A*_*J A 4 python raw-input argv
我正在从Learn Python The Hard Way做ex13
我正试图通过:
python ex13.py raw_input() raw_input() raw_input()
Run Code Online (Sandbox Code Playgroud)
我的代码如下:
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
Run Code Online (Sandbox Code Playgroud)
我一直得到的错误是:
Traceback (most recent call last):
File "ex13.py", line 5, in <module>
script, first, second, third = argv
ValueError: too many values to unpack
Run Code Online (Sandbox Code Playgroud)
我想知道为什么我会收到此错误以及如何解决此问题
小智 8
我现在正在经历LPTHW,并且刚刚接受了这个练习.我认为作者的意思是他希望你在同一个剧本中同时使用argv和raw_input().他并不是指你将它们本身组合在同一个论点或行或其他任何东西中.事实上,他提到的"普通学生问题"之一只涉及这个问题.他说
不要过度思考它.只需在此脚本末尾打两行,用于
raw_input()获取内容然后将其打印出来.从那开始玩更多的方法在同一个脚本中使用它们.
尽管已经晚了2个月,但希望它有所帮助.
这就是我修改脚本以完成相关问题的"Study Drill"的方法:
from sys import argv
script, first, second, third = argv
fourth = raw_input("What is your fourth variable? ")
print "All together, your script is called %r, your first variable is %r, your second is %r, your third is %r, and your fourth is %r" % (script, first, second, third, fourth)
Run Code Online (Sandbox Code Playgroud)
你不能"用raw_input()用argv".argv提供在运行程序之前指定的数据.raw_input()是一个Python函数,即您的程序可以执行的操作.在命令行 -你在那里输入python,以运行您的程序命令-是一个完全独立的东西,从节目本身.