python - 如何将列表作为参数传递给数据类?TypeError: __init__() 缺少必需的位置参数
问题描述
我试过这个
from dataclasses import dataclass
import pandas as pd
@dataclass
class First:
code_event: str
code_event_system: str
company_id: int
date_event: str
date_event_real: str
ecode_class: str
......
d = pd.read_json('my.json', lines=True)
a = d.values.tolist()
的输出
[['S1933190', 'STATIC', 3, '2020-05-26 16:30:00.000', '2020-05-26 16:30:00.000', 525065, 86393, '',......]]
此刻,我的想法是将列表作为参数。
p = First(a)
我得到了类型错误
TypeError: __init__() missing 30 required positional arguments: 'code_event_system', 'company_id',
从终端
>>> len(a)
1
>>> len(a[0])
30
如何解决这个问题?
解决方案
您可以通过执行以下操作来实例化具有参数列表的类:First(*a)
星号只是将列表解包a
到类构造函数的参数中First
。
推荐阅读
- c# - 如何在 .NET Framework 4.6.1 中使用 IActionResult?
- java - 使用詹金斯发送电子邮件得到以下错误响应
- validation - 无法显示验证消息-Angular 6
- android - Braintree PayPal Sandbox 不断重定向
- javascript - jquery click toggle - 单击另一个元素时关闭一个元素
- android - 点击通知导航到不同的活动
- sql - 更改 IDENTITY 列
- php - Dropdown href="" 重定向到索引页面而不是显示下拉列表
- html - 如何使用 JS/CSS/HTML 勾勒表格列
- android - Android Studio 清单错误和禁用的运行按钮