【发布时间】:2020-06-18 12:14:37
【问题描述】:
我最近开始学习 Python 3.7,但出于学习目的,我正在学习 Python 2.7。查询是如何在函数中传递字典参数?
当我执行以下代码时,这就是我们在 python 2.7 中得到的结果:-
def param(first, last, *age, **items):
print first, last
print age
print items
输出 -
param('katy', 'dhilon', 23,45,23,12,67, baron=5, sausage=64)
katy dhilon
(23, 45, 23, 12, 67)
{'baron' = 5, 'sausage' = 64}
但是,当我在 python 3.7 中执行相同操作时:-
param('katy', 'dhilon', 23,45,23,12,67, baron=5, sausage=64)
我收到字典参数的错误:-
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
NameError: name 'param' is not defined
能否请您帮助我了解我在新版本中遗漏了什么?
添加了 python 2.7 结果:-
【问题讨论】:
-
好吧,显然,您没有在 Python 3 代码中定义
param函数。请显示您在 Python 3 中运行的确切代码 -
感谢您的回复.. 我已经编辑了这个问题。可能我在这里遗漏了一些概念。请指导我..我是新手。
-
您的 Python 3 代码是否仅包含以下行:
param('katy', 'dhilon', 23,45,23,12,67, baron=5, sausage=64)? -
def param(first, last, *age, **items): 首先打印,最后打印年龄打印项目,是的,它适用于 python 2.7 但不适用于 3.7。 3.7 的代码是否正确?我的意思是我也可以对 3.7 使用相同的代码吗?
-
此代码在 Python 3 中不正确,因为 the syntax of the
printstatement changed,但您的错误消息告诉您您没有定义param函数
标签: python-2.7 python-3.7