从已设置的值创建 namedtuple 实例
Creating namedtuple instance from already set values
我有一个namedtuple
这样的
course_summary_struct = namedtuple(
'CourseSummary',
['id', 'display_name', 'location', 'display_coursenum', 'display_organization']
)
我想动态更新 namedtuple
直到我确定它包含所有必需的信息。
所以我用步骤中的所有值更新 course_summary_struct
。
现在我需要像这样从 course_summary_struct
创建一个实例
summery = course_summary_struct() #<===== Issue here
我想用 course_summary_struct
中的所有信息填充 summery
。
我该怎么做?
元组是不可变的,创建后无法更改。
您可以使用 recordclass.recordclass
.
在实际创建命名元组实例之前等到您拥有所有必要的信息。
data = {}
data['id'] = 3
# ...
data['display_name'] = 'Chem 101'
# ...
summary = course_summary_struct._make([data[x] for x in course_summary_struct._fields])
如果您的字典中有数据,您可以这样做
course_summary_struct = namedtuple(
'CourseSummary',
['id', 'display_name', 'location', 'display_coursenum', 'display_organization'])
# Your data
data = {
'id': 1,
'display_name': 'naren',
'location': 'Bengaluru',
'display_coursenum': 11,
'display_organization': ':D'}
course_summary_struct(**data)
# Creates > CourseSummary(id=1, display_name='naren', location='Bengaluru', display_coursenum=11, display_organization=':D')
或者,如果您有其他方法,请使用 setattr
setattr(course_summary_struct, 'id', 11)
我有一个namedtuple
这样的
course_summary_struct = namedtuple(
'CourseSummary',
['id', 'display_name', 'location', 'display_coursenum', 'display_organization']
)
我想动态更新 namedtuple
直到我确定它包含所有必需的信息。
所以我用步骤中的所有值更新 course_summary_struct
。
现在我需要像这样从 course_summary_struct
创建一个实例
summery = course_summary_struct() #<===== Issue here
我想用 course_summary_struct
中的所有信息填充 summery
。
我该怎么做?
元组是不可变的,创建后无法更改。
您可以使用 recordclass.recordclass
.
在实际创建命名元组实例之前等到您拥有所有必要的信息。
data = {}
data['id'] = 3
# ...
data['display_name'] = 'Chem 101'
# ...
summary = course_summary_struct._make([data[x] for x in course_summary_struct._fields])
如果您的字典中有数据,您可以这样做
course_summary_struct = namedtuple(
'CourseSummary',
['id', 'display_name', 'location', 'display_coursenum', 'display_organization'])
# Your data
data = {
'id': 1,
'display_name': 'naren',
'location': 'Bengaluru',
'display_coursenum': 11,
'display_organization': ':D'}
course_summary_struct(**data)
# Creates > CourseSummary(id=1, display_name='naren', location='Bengaluru', display_coursenum=11, display_organization=':D')
或者,如果您有其他方法,请使用 setattr
setattr(course_summary_struct, 'id', 11)