我是 Python 的初学者,所以也许答案很简单,我找到了很多信息来根据其他字典值更新字典值,但总是使用相同的键。
我有两本词典。一种是:
global_informations = {"id": "ID_PRODUIT",
"name": "NOM_PRODUIT",
"type_fdes": "PRODUIT_TYPE",
"nb_refs_commerciales": "NB_REF_COMM",
"quantite_unit_fonct": "QUANTITE_UF",
"type_unit_fonct": "ID_UNIT_UF",
"duree_vie": "DVT",
"carbon_biogenique": "CARBONE_BIO"
}
在这个目录中,PRODUIT_TYPE
是一个 int(1,2 或 3)
我想根据这个字典替换这个值:
type_fdes_dictionary = {1: "individuel",
2: "collectif",
3: "defaut"
}
例如,如果我有:
global_informations = {"id": "ID_PRODUIT",
"name": "NOM_PRODUIT",
"type_fdes": 1,
"nb_refs_commerciales": "NB_REF_COMM",
"quantite_unit_fonct": "QUANTITE_UF",
"type_unit_fonct": "ID_UNIT_UF",
"duree_vie": "DVT",
"carbon_biogenique": "CARBONE_BIO"
}
我想要:
global_informations = {"id": "ID_PRODUIT",
"name": "NOM_PRODUIT",
"type_fdes": "individuel",
"nb_refs_commerciales": "NB_REF_COMM",
"quantite_unit_fonct": "QUANTITE_UF",
"type_unit_fonct": "ID_UNIT_UF",
"duree_vie": "DVT",
"carbon_biogenique": "CARBONE_BIO"
}
如何替换这个值?
答案 0 :(得分:0)
这是一个单班轮:
#include <bits/stdc++.h>
using namespace std;
int main()
{
int n;
cin >> n;
int array[n];
for (int i = 0; i < n; i++)
{
cin >> array[n];
}
int const N = 1e4+2;
bool indexarray[N];
for (int i = 0; i < N; i++)
{
indexarray[i] = false;
}
for (int i = 0; i < n; i++)
{
if (array[i] > 0)
{
indexarray[array[i]] = true;
}
}
int ans = -1;
for (int i = 1; i < N; i++)
{
if (indexarray[i] == false)
{
ans = i;
}
}
cout << ans << endl;
return 0;
}
答案 1 :(得分:0)
global_informations = {"id": "ID_PRODUIT",
"name": "NOM_PRODUIT",
"type_fdes": 1,
"nb_refs_commerciales": "NB_REF_COMM",
"quantite_unit_fonct": "QUANTITE_UF",
"type_unit_fonct": "ID_UNIT_UF",
"duree_vie": "DVT",
"carbon_biogenique": "CARBONE_BIO"
}
type_fdes_dictionary = {1: "individuel",
2: "collectif",
3: "defaut"
}
print({k: type_fdes_dictionary.get(v, v) for k, v in global_informations.items()})
输出:{'id':'ID_PRODUIT','name':'NOM_PRODUIT','type_fdes':'individuel','nb_refs_commerciales':'NB_REF_COMM','quantite_unit_fonct':' QUANTITE_UF', 'type_unit_fonct': 'ID_UNIT_UF', 'duree_vie': 'DVT', 'carbon_biogenique': 'CARBONE_BIO'}
答案 2 :(得分:0)
有几种方法可以做到这一点 -
for key,value in global_informations.items():
if key=='type_fdes':
global_informations[key] = type_fdes_dictionary[value]
global_informations['type_fdes'] = type_fdes_dictionary[global_informations['type_fdes']]