Rumah > pembangunan bahagian belakang > Tutorial Python > Apakah Tuple Dinamakan Python dan Bagaimana Ia Dibandingkan dengan Tuple Biasa?

Apakah Tuple Dinamakan Python dan Bagaimana Ia Dibandingkan dengan Tuple Biasa?

Linda Hamilton
Lepaskan: 2024-12-04 05:35:10
asal
559 orang telah melayarinya

What are Python's Named Tuples and How Do They Compare to Regular Tuples?

Apakah Nama Tuple dalam Python?

Tuple bernama adalah jenis objek yang ringan dan mudah dibuat yang meningkatkan kebolehgunaan tupel dengan menyediakan atribut bernama. Mari kita teliti penggunaan dan perbandingannya dengan tupel biasa.

Penciptaan dan Penggunaan Tuple Dinamakan

Untuk mencipta tupel bernama, kami menggunakan fungsi kilang collections.namedtuple. Sebagai contoh, untuk mentakrifkan tupel bernama untuk mata:

from collections import namedtuple
Point = namedtuple('Point', 'x y')
Salin selepas log masuk

Instance tuple bernama ini boleh dibuat seperti tupel biasa:

pt1 = Point(1.0, 5.0)
pt2 = Point(2.5, 1.5)
Salin selepas log masuk

Faedah menggunakan tupel bernama menjadi jelas apabila merujuk sifat-sifat mereka:

line_length = sqrt((pt1.x - pt2.x)**2 + (pt1.y - pt2.y)**2)  # Object-like syntax
Salin selepas log masuk

Kelebihan Tuple Dinamakan berbanding Regular Tuples

  1. Kebolehbacaan yang Dipertingkat: Atribut tuple bernama memberikan nama yang jelas, menjadikan kod lebih mudah difahami.
  2. Notasi Seperti Objek: Dinamakan contoh tuple boleh diakses melalui dereferencing pembolehubah seperti objek (cth., pt1.x), menghapuskan keperluan untuk rujukan indeks.
  3. Pemeriksaan Jenis: Tuple bernama membenarkan pemeriksaan jenis, mengurangkan risiko ralat akibat ketidakpadanan indeks.

Kes Penggunaan untuk Tuple Dinamakan

Tuple bernama disyorkan apabila:

  • Struktur data terdiri daripada jenis nilai tidak berubah.
  • Notasi objek dan atribut bernama meningkatkan kebolehbacaan.
  • Jenis nilai mudah dihantar sebagai parameter kepada fungsi, menambah baik kejelasan fungsi.

Melebihi Nama Asas Tuples

Tuple yang dinamakan juga boleh menggantikan kelas yang tidak boleh diubah dengan hanya medan. Ia juga boleh berfungsi sebagai kelas asas untuk tupel bernama tersuai:

class Point(namedtuple('Point', 'x y')):
    [...]  # Define additional methods
Salin selepas log masuk

Senarai Dinamakan dan Tuple Dinamakan Boleh Berubah

Tiada setara terbina dalam untuk "senarai bernama" dalam Python. Walau bagaimanapun, untuk jenis rekod boleh ubah, terdapat resipi atau modul pihak ketiga yang membenarkan menetapkan nilai baharu kepada atribut:

from rcdtype import recordtype
Point = recordtype('Point', 'x y')
pt1 = Point(1.0, 5.0)
pt1.x = 2.0  # Mutable!
Salin selepas log masuk

Tuple bernama boleh dimanipulasi seperti kamus menggunakan pt1._asdict(), menyediakan akses mudah kepada bidang dan keserasian mereka dengan operasi kamus.

Kesimpulan

Tuple bernama ialah alat yang berkuasa dalam Python, menyediakan cara yang bersih dan intuitif untuk mewakili data, sambil menawarkan kebolehbacaan yang lebih baik, pemeriksaan jenis dan kebolehsesuaian. Sama ada anda bekerja dengan jenis nilai mudah atau struktur rekod yang kompleks, tupel yang dinamakan boleh meningkatkan kecekapan dan kejelasan kod anda.

Atas ialah kandungan terperinci Apakah Tuple Dinamakan Python dan Bagaimana Ia Dibandingkan dengan Tuple Biasa?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan