Melalui Kamus sebagai Parameter Kata Kunci
Dalam Python, menghantar kamus kepada fungsi boleh berfaedah apabila anda ingin menyediakan berbilang parameter dengan kunci tertentu- pasangan nilai. Walau bagaimanapun, apabila matlamatnya adalah untuk menghantar nilai individu untuk setiap parameter, pendekatan mudah mungkin tidak menghasilkan hasil yang diharapkan.
Senario 1: Melepasi Kamus dengan Pasangan Nilai Kunci Tunggal
Pertimbangkan kod berikut:
d = dict(param='test') def f(param): print(param) f(d)
Dalam senario ini, output yang dijangkakan ialah 'ujian', tetapi sebaliknya, kod itu mencetak '{'param': 'test'}'. Untuk mendapatkan output yang diingini, operator ** boleh digunakan untuk membongkar kamus.
Kod Disemak:
d = dict(param='test') def f(param): print(param) f(**d)
Kini, kod akan mencetak 'test ' seperti yang dimaksudkan.
Senario 2: Melepasi Kamus dengan Berbilang Pasangan Nilai Kunci
Isu yang sama timbul apabila menghantar kamus dengan berbilang pasangan nilai kunci kepada fungsi menjangkakan berbilang parameter.
d = dict(p1=1, p2=2) def f2(p1, p2): print(p1, p2) f2(d)
Output yang dijangkakan ialah '1 2', tetapi sebaliknya, kod mengeluarkan '{'p1': 1, 'p2': 2}'. Untuk menyelesaikan masalah ini, operator ** sekali lagi digunakan untuk membongkar kamus.
Kod Disemak:
d = dict(p1=1, p2=2) def f2(p1, p2): print(p1, p2) f2(**d)
Selepas pengubahsuaian ini, kod akan mencetak dengan betul ' 1 2'.
Atas ialah kandungan terperinci Bagaimanakah anda menghantar nilai kamus sebagai parameter individu kepada fungsi Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!