python - 从函数返回位置参数
问题描述
类( people )需要 3 个参数,称为“name、middle_name 和 surname”,我试图给出这些参数,如下所示:
def argument():
name = input("name : ")
middle_name = input("middle name : ")
last_name = input("last name : ")
return name,middle_name,last_name
person = people(argument())
但不知何故它不起作用,我收到的错误消息:
TypeError: __init__() missing 2 required positional arguments
解决方案
假设人的定义如下:
class people:
def __init__(self, name, middle_name, last_name):
self.name = name
self.middle_name = middle_name
self.last_name = last_name
这应该有效:
def argument():
name = input("name : ")
middle_name = input("middle name : ")
last_name = input("last name : ")
return name, middle_name, last_name
person = people(*argument())
print(person.name)
print(person.middle_name)
print(person.last_name)
请注意*
在调用参数之前argument()
。这称为拆包
推荐阅读
- swift - UINavigationItem.LargeTitleDisplayMode.never 包装在 UISplitViewController 中时仍然显示大标题的背景
- flutter - Flutter中的iOS图片多选
- ionic-framework - 如何将 Ionic CLI 与 pnpm 一起使用
- python - Python乘以字符串内的值
- sql-server - TSQL 窗口函数将数据集分成组
- python - 使用 Python 的 turtle 模块进行递归(pythonds book)
- arrays - 获取 2 张地图颤动之间的差异
- winapi - FILE_ATTRIBUTE_OFFLINE 的带有动态动词的快捷菜单
- python - 比较两个连接的列,并将缺失的项目从一个附加到另一个
- eclipse - 使用横向文件导入设置 HANA 工作室后超时错误