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.
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')
Instance tuple bernama ini boleh dibuat seperti tupel biasa:
pt1 = Point(1.0, 5.0) pt2 = Point(2.5, 1.5)
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
Tuple bernama disyorkan apabila:
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
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!
Tuple bernama boleh dimanipulasi seperti kamus menggunakan pt1._asdict(), menyediakan akses mudah kepada bidang dan keserasian mereka dengan operasi kamus.
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!