我有两个词典 - 基本词典和其他词典,我想使用额外的词典数据与功能交互并将数据附加到第一个词典。
dict_report = {'Id': p_id, 'First name': person_name, 'Age': p_age} #basic dict
iter_params = {'Shape': 0, 'Margin': 1} #additional
我有一个接受3个参数的函数,我想使用第二个dict值作为第一个参数。 比方说,用基本语言:
def function():
shape = concatvals(iter_params_mammo(['Shape'],14,19)) #goes to cell value directly
margin = concatvals(iter_params_mammo(['Margin'], 14, 19))
dict_report.add(shape,margin)
return dict_report
应该返回
dict_report = {'Id': p_id, 'First name': person_name, 'Age': p_age, 'Shape': "specific shape", 'Margin': "specific margin"}
我可以以某种方式不指定shape
和margin
,但只是根据附加字典大小和值自动将新值附加到dict,但是使用它们的值来创建新数据吗?
答案 0 :(得分:0)
不确定这是否是您想要的,但这是一份粗略的副本。
toda
将根据传入的key
从现有字典中提取值。
arba
重新插入密钥。
shimi
将更新为现有的dict,然后更新以添加新的键值对
dict_report = {'Id': 'p_id', 'First name': 'person_name', 'Age': 'p_age'}
kv = iter_params = {'Shape': 0, 'Margin': 1}
toda = iter_params.get('Shape')
arba = {'Shape': toda}
print(arba)
def dict_merge(x):
shimi = dict_report
shimi.update(x)
print(shimi)
return shimi
dict_merge(arba)
答案 1 :(得分:0)
我不确定你想要创建什么函数或参数,但据我所知,你只想合并字典并以其他方式返回它,所以,这就是:
dict_report = {'Id': "p_id", 'First name': "person_name", 'Age': "p_age"} #basic dict
iter_params = {'Shape': 0, 'Margin': 1}
def func(d1,d2,arg3):
for k,v in d2.items():
#perform function on v
#e.g. v += 1 or whatever you want
#add to dict_report
d1[k] = v
return d1
dict_report = func(dict_report,iter_params,"3rd parameter?")
print (dict_report)
打印:
{'Id': 'p_id', 'Shape': 0, 'First name': 'person_name', 'Margin': 1, 'Age': 'p_age'}