Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

ฉันจะแปลง Python Named tuple เป็นพจนานุกรมได้อย่างไร


คลาส Namedtuple ถูกกำหนดในโมดูลคอลเลกชัน ส่งคืนคลาสย่อยทูเพิลใหม่ คลาสย่อยใหม่นี้ใช้เพื่อสร้างอ็อบเจ็กต์คล้ายทูเพิลที่มีฟิลด์ที่สามารถเข้าถึงได้โดยการค้นหาแอททริบิวต์ เช่นเดียวกับการทำดัชนีและทำซ้ำได้ ตัวสร้างใช้ชื่อประเภทและรายการเขตข้อมูลเป็นอาร์กิวเมนต์ ตัวอย่างเช่น นักเรียนชื่อทูเพิลถูกประกาศดังนี้ −

>>> from collections import namedtuple
>>> student=namedtuple("student","name, age, marks")

วัตถุของคลาส namedtuple นี้ถูกประกาศเป็น −

>>> s1=student("Raam",21,45)

คลาสนี้มีเมธอด _asdict() ซึ่งส่งคืนออบเจกต์ orderdict()

>>> d=s1._asdict()
>>> d
OrderedDict([('name', 'Raam'), ('age', 21), ('marks', 45)])

ในการรับวัตถุพจนานุกรมปกติให้ใช้ฟังก์ชัน dict()

>>> dct=dict(d)
>>> dct
{'name': 'Raam', 'age': 21, 'marks': 45}

ดี