根据列表项长度对列表进行排序

Sorting a list Based on list item length

country_list= ['Afghanistan', 'Albania', 'Algeria', 'Andorra', 'Angola', 'Antigua and Barbuda', 'Argentina', 'Armenia', 'Australia', 'Austria', 'Austrian Empire', 'Azerbaijan', 'Baden*', 'Bahamas', 'Bahrain', 'Bangladesh', 'Barbados', 'Bavaria*', 'Belarus', 'Belgium', 'Belize', 'Benin', 'Bolivia', 'Bosnia and Herzegovina', 'Botswana', 'Brazil', 'Brunei', 'Brunswick', 'Bulgaria', 'Burkina Faso', 'Burma', 'Burundi', 'Cabo Verde', 'Cambodia', 'Cameroon', 'Canada', 'Cayman Islands, The', 'Central African Republic', 'Central American Federation*', 'Chad', 'Chile', 'China', 'Colombia', 'Comoros', 'Congo Free State', 'Costa Rica', 'Ivory Coast', 'Croatia', 'Cuba', 'Cyprus', 'Czechia', 'Czechoslovakia', 'Democratic Republic of the Congo', 'Denmark', 'Djibouti', 'Dominica', 'Dominican Republic', 'Duchy of Parma, The*', 'East Germany (German Democratic Republic)', 'Ecuador', 'Egypt', 'El Salvador', 'Equatorial Guinea', 'Eritrea', 'Estonia', 'Eswatini', 'Ethiopia', 'Federal Government of Germany (1848-49)*', 'Fiji', 'Finland', 'France', 'Gabon', 'Gambia, The', 'Georgia', 'Germany', 'Ghana', 'Grand Duchy of Tuscany', 'Greece', 'Grenada', 'Guatemala', 'Guinea', 'Guinea-Bissau', 'Guyana', 'Haiti', 'Hanover*', 'Hanseatic Republics*', 'Hawaii*', 'Hesse*', 'Holy See', 'Honduras', 'Hungary', 'Iceland', 'India', 'Indonesia', 'Iran', 'Iraq', 'Ireland', 'Israel', 'Italy', 'Jamaica', 'Japan', 'Jordan', 'Kazakhstan', 'Kenya', 'Kingdom of Serbia/Yugoslavia*', 'Kiribati', 'Korea', 'Kosovo', 'Kuwait', 'Kyrgyzstan', 'Laos', 'Latvia', 'Lebanon', 'Lesotho', 'Lew Chew (Loochoo)*', 'Liberia', 'Libya', 'Liechtenstein', 'Lithuania', 'Luxembourg', 'Madagascar', 'Malawi', 'Malaysia', 'Maldives', 'Mali', 'Malta', 'Marshall Islands', 'Mauritania', 'Mauritius', 'Mecklenburg-Schwerin*', 'Mecklenburg-Strelitz*', 'Mexico', 'Micronesia', 'Moldova', 'Monaco', 'Mongolia', 'Montenegro', 'Morocco', 'Mozambique', 'Namibia', 'Nassau*', 'Nauru', 'Nepal', 'Netherlands, The', 'New Zealand', 'Nicaragua', 'Niger', 'Nigeria', 'North German Confederation*', 'North German Union*', 'North Macedonia', 'Norway', 'Oldenburg*', 'Oman', 'Orange Free State*', 'Pakistan', 'Palau', 'Panama', 'Papal States*', 'Papua New Guinea', 'Paraguay', 'Peru', 'Philippines', 'Piedmont-Sardinia*', 'Poland', 'Portugal', 'Qatar', 'Republic of Genoa*', 'Republic of Korea (South Korea)', 'Republic of the Congo', 'Romania', 'Russia', 'Rwanda', 'Saint Kitts and Nevis', 'Saint Lucia', 'Saint Vincent and the Grenadines', 'Samoa', 'San Marino', 'Sao Tome and Principe', 'Saudi Arabia', 'Schaumburg-Lippe*', 'Senegal', 'Serbia', 'Seychelles', 'Sierra Leone', 'Singapore', 'Slovakia', 'Slovenia', 'Solomon Islands, The', 'Somalia', 'South Africa', 'South Sudan', 'Spain', 'Sri Lanka', 'Sudan', 'Suriname', 'Sweden', 'Switzerland', 'Syria', 'Tajikistan', 'Tanzania', 'Texas*', 'Thailand', 'Timor-Leste', 'Togo', 'Tonga', 'Trinidad and Tobago', 'Tunisia', 'Turkey', 'Turkmenistan', 'Tuvalu', 'Two Sicilies*', 'Uganda', 'Ukraine', 'Union of Soviet Socialist Republics*', 'United Arab Emirates, The', 'United Kingdom', 'Uruguay', 'Uzbekistan', 'Vanuatu', 'Venezuela', 'Vietnam', 'Yemen', 'Zambia', 'Zimbabwe']

如何使用 python 根据此元素长度对列表进行排序?

sorted()key=len一起使用:

country_list = ['Afghanistan', 'Albania', 'Algeria', 'Andorra', 'Angola', 'Antigua and Barbuda', 'Argentina', 'Armenia', 'Australia', 'Austria', 'Austrian Empire', 'Azerbaijan', 'Baden*', 'Bahamas', 'Bahrain', 'Bangladesh', 'Barbados', 'Bavaria*', 'Belarus', 'Belgium', 'Belize', 'Benin', 'Bolivia', 'Bosnia and Herzegovina', 'Botswana', 'Brazil', 'Brunei', 'Brunswick', 'Bulgaria', 'Burkina Faso', 'Burma', 'Burundi', 'Cabo Verde', 'Cambodia', 'Cameroon', 'Canada', 'Cayman Islands, The', 'Central African Republic', 'Central American Federation*', 'Chad', 'Chile', 'China', 'Colombia', 'Comoros', 'Congo Free State', 'Costa Rica', 'Ivory Coast', 'Croatia', 'Cuba', 'Cyprus', 'Czechia', 'Czechoslovakia', 'Democratic Republic of the Congo', 'Denmark', 'Djibouti', 'Dominica', 'Dominican Republic', 'Duchy of Parma, The*', 'East Germany (German Democratic Republic)', 'Ecuador', 'Egypt', 'El Salvador', 'Equatorial Guinea', 'Eritrea', 'Estonia', 'Eswatini', 'Ethiopia', 'Federal Government of Germany (1848-49)', 'Fiji', 'Finland', 'France', 'Gabon', 'Gambia, The', 'Georgia', 'Germany', 'Ghana', 'Grand Duchy of Tuscany', 'Greece', 'Grenada', 'Guatemala', 'Guinea', 'Guinea-Bissau', 'Guyana', 'Haiti', 'Hanover', 'Hanseatic Republics*', 'Hawaii*', 'Hesse*', 'Holy See', 'Honduras', 'Hungary', 'Iceland', 'India', 'Indonesia', 'Iran', 'Iraq', 'Ireland', 'Israel', 'Italy', 'Jamaica', 'Japan', 'Jordan', 'Kazakhstan', 'Kenya', 'Kingdom of Serbia/Yugoslavia*', 'Kiribati', 'Korea', 'Kosovo', 'Kuwait', 'Kyrgyzstan', 'Laos', 'Latvia', 'Lebanon', 'Lesotho', 'Lew Chew (Loochoo)', 'Liberia', 'Libya', 'Liechtenstein', 'Lithuania', 'Luxembourg', 'Madagascar', 'Malawi', 'Malaysia', 'Maldives', 'Mali', 'Malta', 'Marshall Islands', 'Mauritania', 'Mauritius', 'Mecklenburg-Schwerin', 'Mecklenburg-Strelitz*', 'Mexico', 'Micronesia', 'Moldova', 'Monaco', 'Mongolia', 'Montenegro', 'Morocco', 'Mozambique', 'Namibia', 'Nassau*', 'Nauru', 'Nepal', 'Netherlands, The', 'New Zealand', 'Nicaragua', 'Niger', 'Nigeria', 'North German Confederation*', 'North German Union*', 'North Macedonia', 'Norway', 'Oldenburg*', 'Oman', 'Orange Free State*', 'Pakistan', 'Palau', 'Panama', 'Papal States*', 'Papua New Guinea', 'Paraguay', 'Peru', 'Philippines', 'Piedmont-Sardinia*', 'Poland', 'Portugal', 'Qatar', 'Republic of Genoa*', 'Republic of Korea (South Korea)', 'Republic of the Congo', 'Romania', 'Russia', 'Rwanda', 'Saint Kitts and Nevis', 'Saint Lucia', 'Saint Vincent and the Grenadines', 'Samoa', 'San Marino', 'Sao Tome and Principe', 'Saudi Arabia', 'Schaumburg-Lippe*', 'Senegal', 'Serbia', 'Seychelles', 'Sierra Leone', 'Singapore', 'Slovakia', 'Slovenia', 'Solomon Islands, The', 'Somalia', 'South Africa', 'South Sudan', 'Spain', 'Sri Lanka', 'Sudan', 'Suriname', 'Sweden', 'Switzerland', 'Syria', 'Tajikistan', 'Tanzania', 'Texas*', 'Thailand', 'Timor-Leste', 'Togo', 'Tonga', 'Trinidad and Tobago', 'Tunisia', 'Turkey', 'Turkmenistan', 'Tuvalu', 'Two Sicilies*', 'Uganda', 'Ukraine', 'Union of Soviet Socialist Republics*', 'United Arab Emirates, The', 'United Kingdom', 'Uruguay', 'Uzbekistan', 'Vanuatu', 'Venezuela', 'Vietnam', 'Yemen', 'Zambia', 'Zimbabwe']
country_list = sorted(country_list, key=len)


# pretty print on screen:
from pprint import pprint
pprint(country_list)

打印:

['Chad',
 'Cuba',
 'Fiji',
 'Iran',
 'Iraq',
 'Laos',
 'Mali',
 'Oman',
 'Peru',
 'Togo',
 'Benin',
 'Burma',
 'Chile',
 'China',
 'Egypt',
 'Gabon',
 'Ghana',
 'Haiti',
 'India',
 'Italy',
 'Japan',
 'Kenya',
 'Korea',
 'Libya',
 'Malta',
 'Nauru',
 'Nepal',
 'Niger',
 'Palau',
 'Qatar',
 'Samoa',
 'Spain',
 'Sudan',
 'Syria',
 'Tonga',
 'Yemen',
 'Angola',
 'Baden*',
 'Belize',
 'Brazil',
 'Brunei',
 'Canada',
 'Cyprus',
 'France',
 'Greece',
 'Guinea',
 'Guyana',
 'Hesse*',
 'Israel',
 'Jordan',
 'Kosovo',
 'Kuwait',
 'Latvia',
 'Malawi',
 'Mexico',
 'Monaco',
 'Norway',
 'Panama',
 'Poland',
 'Russia',
 'Rwanda',
 'Serbia',
 'Sweden',
 'Texas*',
 'Turkey',
 'Tuvalu',
 'Uganda',
 'Zambia',
 'Albania',
 'Algeria',
 'Andorra',
 'Armenia',
 'Austria',
 'Bahamas',
 'Bahrain',
 'Belarus',
 'Belgium',
 'Bolivia',
 'Burundi',
 'Comoros',
 'Croatia',
 'Czechia',
 'Denmark',
 'Ecuador',
 'Eritrea',
 'Estonia',
 'Finland',
 'Georgia',
 'Germany',
 'Grenada',
 'Hanover',
 'Hawaii*',
 'Hungary',
 'Iceland',
 'Ireland',
 'Jamaica',
 'Lebanon',
 'Lesotho',
 'Liberia',
 'Moldova',
 'Morocco',
 'Namibia',
 'Nassau*',
 'Nigeria',
 'Romania',
 'Senegal',
 'Somalia',
 'Tunisia',
 'Ukraine',
 'Uruguay',
 'Vanuatu',
 'Vietnam',
 'Barbados',
 'Bavaria*',
 'Botswana',
 'Bulgaria',
 'Cambodia',
 'Cameroon',
 'Colombia',
 'Djibouti',
 'Dominica',
 'Eswatini',
 'Ethiopia',
 'Holy See',
 'Honduras',
 'Kiribati',
 'Malaysia',
 'Maldives',
 'Mongolia',
 'Pakistan',
 'Paraguay',
 'Portugal',
 'Slovakia',
 'Slovenia',
 'Suriname',
 'Tanzania',
 'Thailand',
 'Zimbabwe',
 'Argentina',
 'Australia',
 'Brunswick',
 'Guatemala',
 'Indonesia',
 'Lithuania',
 'Mauritius',
 'Nicaragua',
 'Singapore',
 'Sri Lanka',
 'Venezuela',
 'Azerbaijan',
 'Bangladesh',
 'Cabo Verde',
 'Costa Rica',
 'Kazakhstan',
 'Kyrgyzstan',
 'Luxembourg',
 'Madagascar',
 'Mauritania',
 'Micronesia',
 'Montenegro',
 'Mozambique',
 'Oldenburg*',
 'San Marino',
 'Seychelles',
 'Tajikistan',
 'Uzbekistan',
 'Afghanistan',
 'Ivory Coast',
 'El Salvador',
 'Gambia, The',
 'New Zealand',
 'Philippines',
 'Saint Lucia',
 'South Sudan',
 'Switzerland',
 'Timor-Leste',
 'Burkina Faso',
 'Saudi Arabia',
 'Sierra Leone',
 'South Africa',
 'Turkmenistan',
 'Guinea-Bissau',
 'Liechtenstein',
 'Papal States*',
 'Two Sicilies*',
 'Czechoslovakia',
 'United Kingdom',
 'Austrian Empire',
 'North Macedonia',
 'Congo Free State',
 'Marshall Islands',
 'Netherlands, The',
 'Papua New Guinea',
 'Equatorial Guinea',
 'Schaumburg-Lippe*',
 'Dominican Republic',
 'Lew Chew (Loochoo)',
 'Orange Free State*',
 'Piedmont-Sardinia*',
 'Republic of Genoa*',
 'Antigua and Barbuda',
 'Cayman Islands, The',
 'North German Union*',
 'Trinidad and Tobago',
 'Duchy of Parma, The*',
 'Hanseatic Republics*',
 'Mecklenburg-Schwerin',
 'Solomon Islands, The',
 'Mecklenburg-Strelitz*',
 'Republic of the Congo',
 'Saint Kitts and Nevis',
 'Sao Tome and Principe',
 'Bosnia and Herzegovina',
 'Grand Duchy of Tuscany',
 'Central African Republic',
 'United Arab Emirates, The',
 'North German Confederation*',
 'Central American Federation*',
 'Kingdom of Serbia/Yugoslavia*',
 'Republic of Korea (South Korea)',
 'Democratic Republic of the Congo',
 'Saint Vincent and the Grenadines',
 'Union of Soviet Socialist Republics*',
 'Federal Government of Germany (1848-49)',
 'East Germany (German Democratic Republic)']

另一种方式是:list.sort(key=lambda x: len(x))