Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Mengapa Tiada Pemahaman Tuple dalam Python?

Mengapa Tiada Pemahaman Tuple dalam Python?

Barbara Streisand
Barbara Streisandasal
2024-11-05 00:35:02467semak imbas

Why are There No Tuple Comprehensions in Python?

Menyingkap Pemahaman Tuple yang Hilang dalam Python

Dalam bidang Python, pemahaman senarai dan kamus ada di mana-mana, dengan lancar mengubah iterable menjadi senarai yang disesuaikan dan kamus. Anehnya, tupel nampaknya tidak mempunyai mekanisme pemahaman khusus, membuatkan pengguna tertanya-tanya tentang ketiadaannya.

Ketidakbolehubahan Tuples

Seseorang mungkin pada mulanya membuat hipotesis bahawa kebolehubah tuples menghalang kefahaman. Walau bagaimanapun, teori ini gagal kerana jenis lain yang tidak berubah, seperti rentetan, dengan senang hati menerima pemahaman.

Asal-usul Sejarah

Alasan asasnya berpunca daripada pilihan sejarah yang dibuat oleh Python's pencipta. Apabila ungkapan penjana (ungkapan dalam kurungan yang menghasilkan iterator) diperkenalkan, ia dianggap tidak perlu untuk mencipta sintaks pemahaman tuple yang berasingan. Tanda kurung sudah menjadi notasi yang dipilih untuk penjana dan menyediakan sintaks tambahan khusus untuk tupel akan menghasilkan lebihan.

Ekspresi Penjana untuk Penyelamat

Jika ketiadaan a sintaks pemahaman tuple menimbulkan halangan, jangan takut! Python menawarkan penyelesaian dengan menggunakan kurungan untuk mencipta ungkapan penjana:

<code class="python">tuple(i for i in (1, 2, 3))</code>

Ungkapan ini menilai kepada tuple yang mengandungi elemen yang dikehendaki.

Atas ialah kandungan terperinci Mengapa Tiada Pemahaman Tuple dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn