pythonでdictsのリストに複数のリストを変換する方法?

adfgasda:

私は2つの数値と減算それらを取るプログラムを持っており、個々の場所でのもの、数十をIEと数百人は、彼らがから、彼らが借りする必要がある場合は減算されている数よりも小さい場合にも教えてくれる。

a=2345
b=1266
o=[int(d) for d in str(a)]
a=[int(d) for d in str(a)]
b=[int(d) for d in str(b)]
x=len(a)
y=len(b)
i=1
state=[]
c=[]
for n in range(x):
    if a[x-i]<b[y-i]:
        a[x-i]+=10
        a[x-i-1]-=1
        state.append(True)
    else:
        state.append(False)
    i+=1
i=1    
for m in range(x):
    c.append(a[x-i]-b[y-i])
    i+=1
c=c[::-1]
print(o) #before borrow
print(a) #after borrow
print(b) #number to subtract
print(c) #result
print(state) #if borrowed

そして、これは私の出力は次のようになります。

[2, 3, 4, 5]
[2, 2, 13, 15]
[1, 2, 6, 6]
[1, 0, 7, 9]
[False, False, False, False]

1)私は以下のような場所ごとに辞書のリストに結果をマップしたい:ここに私の質問です:

[{'initial_num': '5', 'after_borrow': '15', 'state': True, 'after_subtract': '9'},
{'initial_num': '4', 'after_borrow': '13', 'state': True, 'after_subtract': '7'}...]

どのように私は、私はそれぞれの特定の位置に対応するリストで4 dictsを持っていることをこのように行うのですか?

ガイ:

することができますzipあなたがすることに興味があるリストdictリストの内包とS

l = [{'initial_num': x, 'after_borrow': y, 'state': z, 'after_subtract': k} for x, y, z, k in zip(o, a, state, c)]

おすすめ

転載: http://43.154.161.224:23101/article/api/json?id=4507&siteId=1