我是python编程的新手,我指的是一本书"Python编程:计算机科学导论“。由于我无法阅读一本面向python 3的基础书,所以我面临着下面描述的语法问题
>>> def f():
x,y=input("enter two numbers seperated by a comma: ")
s=x+y
d=x-y
print (s,d)
f()我得到的结果是
>>> f()
enter two numbers seperated by a comma: 2,3
Traceback (most recent call last):
File "<pyshell#10>", line 1, in <module>
f()
File "<pyshell#9>", line 2, in f
x,y=input("enter two numbers seperated by a comma: ")
ValueError: too many values to unpack (expected 2)我试图在一些书中找到解决方案,比如深入研究python 3和核心python编程,但我认为它们对我来说太高了-- now.Please帮助。
发布于 2015-11-24 07:29:41
"input“当时只返回一个值,因此不能为两个变量分配它。如果您期望两个值,您可能希望通过空格或任何其他方便的分隔符来拆分字符串。
>>> x,y = map(int, input("Enter x and y separated by comma: ").split(',', 1))
Enter x and y separated by comma: 1, 2
>>> x
1
>>> y
2拆分(var,1) -确保只将字符串拆分一次,分成两部分。map(int.)-将每个字符串段值转换为整数。
发布于 2015-11-24 07:29:25
input函数返回一个str (在Python3中),它不会被自动拆分为两个变量。你需要做的事情是:
x, y = input('enter two numbers separated by a comma:').split(',')https://stackoverflow.com/questions/33887662
复制相似问题