2017-01-18 1 views
1

で辞書にI以下のリストを持っている:Pythonのリストは、キー

[['Andorra', '19165'], ['Algeria', '233724']] 

各サブリストの最初の値がある - 国

各サブリストの2番目の値は -

どうすれば人口

私は countryキーとサブリスト内の各値に​​キーを設定するこのリストから辞書を作成します。

私はこの結果を期待しています:

{'Country': 'Andora', 'population': '19165'}, .... 
+2

あなたが望む正確な出力を表示してください。 –

+0

また、あなたが行った研究とあなたが試したことを示してください。 –

+0

@PHPLoverあなたの質問は役に立たなかったので、編集をロールバックしました。 –

答えて

5

何について:sourceはサブリストのリストである

result = {country:pop for country,pop in source} 

またはシェルで:

>>> source = [['Andorra', '69165'], ['Algeria', '40375954'], ['Antigua and Barbuda', '92738'], ['Azerbaijan', '9868447'], ['Australia', '24309330'], ['Aruba', '104263'], ['Albania', '2903700'], ['American Samoa', '55602'], ['Afghanistan', '33369945'], ['Anguilla', '14763'], ['Austria', '8569633'], ['Armenia', '3026048'], ['Angola', '25830958'], ['Argentina', '43847277']] 
>>> {country:pop for country,pop in source} 
{'Andorra': '69165', 'Angola': '25830958', 'Austria': '8569633', 'Armenia': '3026048', 'Anguilla': '14763', 'American Samoa': '55602', 'Albania': '2903700', 'Australia': '24309330', 'Afghanistan': '33369945', 'Aruba': '104263', 'Azerbaijan': '9868447', 'Argentina': '43847277', 'Antigua and Barbuda': '92738', 'Algeria': '40375954'} 

EDIT

あなたの質問を再読み込みした後、私はあなたが探し思う:

result = [{'country':country,'population':pop} for country,pop in source] 

これが与える:

>>> source = [['Andorra', '69165'], ['Algeria', '40375954'], ['Antigua and Barbuda', '92738'], ['Azerbaijan', '9868447'], ['Australia', '24309330'], ['Aruba', '104263'], ['Albania', '2903700'], ['American Samoa', '55602'], ['Afghanistan', '33369945'], ['Anguilla', '14763'], ['Austria', '8569633'], ['Armenia', '3026048'], ['Angola', '25830958'], ['Argentina', '43847277']] 
>>> [{'country':country,'population':pop} for country,pop in source] 
[{'population': '69165', 'country': 'Andorra'}, {'population': '40375954', 'country': 'Algeria'}, {'population': '92738', 'country': 'Antigua and Barbuda'}, {'population': '9868447', 'country': 'Azerbaijan'}, {'population': '24309330', 'country': 'Australia'}, {'population': '104263', 'country': 'Aruba'}, {'population': '2903700', 'country': 'Albania'}, {'population': '55602', 'country': 'American Samoa'}, {'population': '33369945', 'country': 'Afghanistan'}, {'population': '14763', 'country': 'Anguilla'}, {'population': '8569633', 'country': 'Austria'}, {'population': '3026048', 'country': 'Armenia'}, {'population': '25830958', 'country': 'Angola'}, {'population': '43847277', 'country': 'Argentina'}] 
+0

あなたはそれがOPが望んでいることをどのように知っていますか?彼はサブリストをそこに言及した。私は質問が不明であると思う。 – Maroun

+0

@MarounMaroun:OPの質問に基づいて:*サブリスト内の各値にカントリーキーと母集団キーを設定するこのリストから辞書を作成するにはどうすればいいですか? –

+0

完全なコードを教えてください。 – Coder

1

Iこれはあなたのことだと思うよ

[{'country': country, 'population': population} for country, population in l] 

出力のためにooking:

[{'population': '69165', 'country': 'Andorra'}, {'population': '40375954', 
    'country': 'Algeria'}, {'population': '92738', 'country': 'Antigua and Barbuda'}, 
{'population': '9868447', 'country': 'Azerbaijan'}, {'population': '24309330', 'country': 
    'Australia'}, {'population': '104263', 'country': 'Aruba'}, {'population': '2903700', 
    'country': 'Albania'}, {'population': '55602', 'country': 'American Samoa'}, 
{'population': '33369945', 'country': 'Afghanistan'}, {'population': '14763', 
    'country': 'Anguilla'}, {'population': '8569633', 'country': 'Austria'}, 
{'population': '3026048', 'country': 'Armenia'}, {'population': '25830958', 
    'country': 'Angola'}, {'population': '43847277', 'country': 'Argentina'}] 
+0

はい、これはおそらくOPが探していたものです+1。奇妙な '' Aruba''は青色で強調表示されています –

+1

@WillemVanOnsem何らかの理由で、 –

関連する問題