次の微調整があなたが求めていることを行うと思います:
値を対応するキーに割り当てるだけで、long
特性が保持されます。
yesterday = {'facebook_adgroups': [4634L], 'google_third_party_tags': [1790L]}
for k, v in yesterday.iteritems():
i = 0
print v[0]
yesterday[k] = v[0]
i += 1
print yesterday
結果は
4634
1790
{'facebook_adgroups': 4634L, 'google_third_party_tags': 1790L}
値にはまだL
. しかし、割り当てを変更すると:
yesterday[k] = int(v[0])
出力は次のようになります
{'facebook_adgroups': 4634, 'google_third_party_tags': 1790}
これが「あまりPythonicではない」ことを自由に認めますが、仕事をしているように見えます。
あなたの質問を読み直すと、タイトルに記載されているように質問に答えたように見えますが、よく見ると、これがあなたが苦労していたことであることが明確ではありません。
キーと値のペアから始めた場合、数値インデックスにアクセスしようとすると危険が伴うことを強く警告します。物事はあなたが思っていた順序ではないかもしれません、アイテムが欠落しているかもしれません.欠落した値のデフォルトを使用して、既知の順序で具体的に割り当てない限り、これはいつかうまくいかないでしょう-そしてあなたはバグを見つけるために何時間も探します. . のようなことをした方が良い
yNum[0] = yesterday['facebook_adgroups']
yNum[1] = yesterday['google_third_party_tags']
int()
など。タイプを強制したい場合は、おそらくその周りで。