python中的輸入字串:串列中的多個字典
input = [{'a'/span>: '1', 'b':'2','c': '10'},{'a': '1', 'b':'3', 'c': '11'},{'a': '2','b':'19', 'c':'100']
output = [ {'1'/span>:{'b'/span>: ('2','3'),'c'。 ('10','11')},'2'。 {'b':(19),'c':(100)}}]
uj5u.com熱心網友回復:
def dic_to_output(dic,col):
df = pd.DataFrame(dic)
colname = list(df.columns)
#print(colname)。
colname.remove(str(col))
df = df.groupby('a').agg(lambda x: list(x).reset_index().set_index('a'/span>).T
return df.to_dict()
input = [{'a': '1', 'b': '2', 'c': '10'},{'a': '1', 'b': '3', 'c': '11'}, {'a': '2', 'b': '19', 'c': '100'}]
dic_to_output(dic,'a')
輸出。 {'1': {'b': ['2', '3'], 'c': ['10', '11']}, '2': {'b': ['19'], 'c': ['100']}}
uj5u.com熱心網友回復:
def func(mylist)。
t = {}
for i in d。
itr = iter(i)
k = i[next(itr)]
tmp = t.get(k, {})
for m in itr:
n = i[m]
if (tmp.get(m, None) == None):
tmp[m] = tuple()
if (i[m] not in set(tmp[m])):
tmp[m] = (n,)
t[k] = tmp
print([t])
d = [{'a'/span>: '1', 'b':'2','c': '10'},{'a': '1', 'b':'3', 'c': '11'},{'a': '2','b':'19', 'c':'100'}]
func(d)
d = [{'a': '1', 'b':'2','c': '10'},{'a': '1', 'b':'3', 'c':'11']
func(d)
d = [{'a': '1'/span>, 'd'/span>: 4, 'b':'2','c': '10'},{'a': '1', 'd': 4, 'b':'3','c':'11'}]
func(d)
d = [{'a': '1'/span>, 'd'/span>: 4, 'b':'2','c': '10'},{'a': '1', 'b':'3', 'd': 4,'c':'11'}]
func(d)
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/328611.html
標籤:
