Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimana untuk mencetak semua pasangan nilai kunci dalam kamus dalam Python

Bagaimana untuk mencetak semua pasangan nilai kunci dalam kamus dalam Python

王林
王林ke hadapan
2023-05-05 21:22:054572semak imbas

Untuk mencetak semua pasangan nilai kunci dalam kamus:

  • Gunakan kaedah dict.items() untuk mendapatkan paparan item kamus.

  • Gunakan for untuk mengulang pandangan.

  • Cetak setiap pasangan nilai kunci menggunakan fungsi print(). Kaedah

my_dict = {
    'name': 'jiyik',
    'age': 30,
    'language': 'Python'
}

for key, value in my_dict.items():
    # name jiyik
    # age 30
    # language Python
    print(key, value)


print(list(my_dict.keys()))  # ????️ ['name', 'age', 'language']

print(list(my_dict.values()))  # ????️ ['jiyik', 30, 'Python']

dict.items mengembalikan paparan baharu item kamus ((kunci, nilai) pasangan).

# ????️ [('name', 'jiyik'), ('age', 30), ('language', 'Python')]
print(list(my_dict.items()))

Jika kita perlu memformat kekunci dan nilai dalam apa jua cara, gunakan literal rentetan yang diformatkan.

my_dict = {
    'name': 'jiyik',
    'age': 30,
    'language': 'Python'
}

for key, value in my_dict.items():
    # name=jiyik
    # age=30
    # language=Python
    print(f'{key}={value}')

Rentetan Terformat Tersurat f-strings Mari masukkan ungkapan dalam rentetan dengan memberi awalan dengan f.

var1 = 'fql'
var2 = 'jiyik'

result = f'{var1}{var2}'
print(result)  # ????️ fqljiyik

Pastikan untuk menyertakan ungkapan dalam pendakap - {expression}.

Kami boleh menggunakan kaedah dict.keys() dan dict.values() untuk mencetak kunci dan nilai kamus. Kaedah

my_dict = {
    'name': 'jiyik',
    'age': 30,
    'language': 'Python'
}

print(list(my_dict.keys()))  # ????️ ['name', 'age', 'language']

print(list(my_dict.values()))  # ????️ ['jiyik', 30, 'Python']

dict.keys mengembalikan paparan baharu kekunci kamus. Kaedah

dict.values mengembalikan pandangan baharu nilai kamus.

Jika kita perlu menggabungkan pasangan nilai kunci kamus ke dalam rentetan, sila gunakan kaedah str.join().

my_dict = {
    'name': 'jiyik',
    'age': 30,
    'language': 'Python'
}

result = ', '.join(f'{key}: {value}' for key, value in my_dict.items())

# ????️ name: jiyik, age: 30, language: Python
print(result)

Kami menghantar ungkapan penjana kepada kaedah str.join().

Ekspresi penjana digunakan untuk melaksanakan beberapa operasi pada setiap elemen atau memilih subset elemen yang memenuhi syarat.

Dalam setiap lelaran, kami memformat pasangan nilai kunci menggunakan literal rentetan yang diformatkan. Kaedah

str.join mengambil iterable sebagai hujah dan mengembalikan rentetan yang merupakan gabungan rentetan dalam iterable.

Rentetan di mana kaedah ini dipanggil digunakan sebagai pemisah antara unsur.

Kami menggunakan koma dan ruang sebagai pemisah antara pasangan nilai kunci, tetapi anda boleh menggunakan mana-mana pemisah lain.

Berikut ialah contoh menggunakan aksara baris baharu (n) sebagai pembatas.

my_dict = {
    'name': 'jiyik',
    'age': 30,
    'language': 'Python'
}


result = '\n'.join(f'{key}: {value}' for key, value in my_dict.items())

# name: jiyik
# age: 30
# language: Python
print(result)

Apabila digabungkan dengan baris baharu n pembatas aksara, pasangan nilai kunci kamus dicetak pada baris yang berasingan.

Kami juga boleh menggunakan operator pembongkaran * boleh diulang dengan argumen sep untuk mencetak semua pasangan nilai kunci dalam kamus.

my_dict = {
    'name': 'jiyik',
    'age': 30,
    'language': 'Python'
}


# ('name', 'jiyik')
# ('age', 30)
# ('language', 'Python')
print(*my_dict.items(), sep='\n')

* Operator pembongkaran boleh lelar membolehkan kami membuka balut objek boleh lelar dalam panggilan fungsi, pemahaman dan ungkapan penjana. Parameter

sep ialah pemisah antara parameter yang kita hantar ke print().

print('fql', 'jiyik', sep='')  # ????️ fqljiyik

print('fql', 'jiyik')  # ????️ fql jiyik

Secara lalai, parameter sep ditetapkan kepada ruang.

Kita boleh menggunakan kaedah json.dumps() untuk mencetak cantik pasangan nilai kunci dalam kamus. Kaedah

import json

my_dict = {
    'name': 'jiyik',
    'age': 30,
    'language': 'Python'
}


# {
#     "name": "jiyik",
#     "age": 30,
#     "language": "Python"
# }
print(json.dumps(my_dict, indent=4))

json.dumps menukar objek Python kepada rentetan berformat JSON.

Jika indent ditetapkan kepada integer bukan negatif, elemen tatasusunan JSON atau ahli objek akan dicetak cantik menggunakan tahap lekukan yang ditentukan.

Kami menggunakan tahap lekukan sebanyak 4 ruang, tetapi anda boleh menggunakan mana-mana integer positif yang lain.

Kami boleh menetapkan parameter sort_keys kepada True untuk mengisih kekunci kamus apabila bersiri kepada JSON. Parameter

import json

my_dict = {
    'name': 'jiyik',
    'age': 30,
    'language': 'Python'
}


# {
#     "age": 30,
#     "language": "Python",
#     "name": "jiyik"
# }
print(json.dumps(my_dict, indent=4, sort_keys=True))

sort_keys boleh digunakan untuk mengisih output mengikut abjad mengikut kekunci.

Kami juga boleh menggunakan kaedah pprint() untuk mencetak cantik pasangan nilai kunci dalam kamus. Kaedah

from pprint import pprint

my_dict = {
    'name': 'jiyik',
    'age': 30,
    'language': 'Python'
}


# {'name': 'jiyik',
#  'age': 30,
#  'language': 'Python'}
pprint(my_dict, width=1, sort_dicts=False)

pprint.pprint mencetak perwakilan berformat objek.

Kami menetapkan parameter lebar kepada 1 untuk menetapkan bilangan maksimum aksara yang diperlukan setiap baris kepada 1.

Dengan cara ini, semua pasangan nilai kunci dalam kamus akan dicetak pada baris yang berbeza.

Kami juga menetapkan parameter sort_dicts kepada False untuk menghalang kaedah daripada mengisih kekunci dalam kamus mengikut abjad.

Apabila sort_dicts ditetapkan kepada Palsu, item kamus dicetak dalam susunan sisipan.

Atas ialah kandungan terperinci Bagaimana untuk mencetak semua pasangan nilai kunci dalam kamus dalam Python. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:yisu.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam