Python
 Computer >> コンピューター >  >> プログラミング >> Python

Python Namedタプルを辞書に変換するにはどうすればよいですか?


Namedtupleクラスはコレクションモジュールで定義されています。新しいタプルサブクラスを返します。新しいサブクラスは、属性ルックアップによってアクセス可能なフィールドを持ち、インデックス付けおよび反復可能であるタプルのようなオブジェクトを作成するために使用されます。コンストラクターは、型名とフィールドリストを引数として取ります。たとえば、tupleという名前の学生は次のように宣言されます-

>>> from collections import namedtuple
>>> student=namedtuple("student","name, age, marks")
このnamedtupleクラスのオブジェクトは-

として宣言されています
>>> s1=student("Raam",21,45)

このクラスには、orderdict()オブジェクトを返す_asdict()メソッドがあります

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

通常の辞書オブジェクトを取得するには、dict()関数を使用します

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

良い


  1. タプル内でPythonタプルを使用するにはどうすればよいですか?

    タプルは、括弧で囲まれたPythonオブジェクトの順序付けられたコレクションとして定義されます。したがって、タプルはコレクション内のアイテムの1つになる可能性が非常に高くなります。 >>> t1=(1,(4, 5, 6),2,3) >>> t1 (1, (4, 5, 6), 2, 3) この例では、t1のインデックス番号1のアイテムはタプル自体です。したがって、インデックスを使用して-として取得できます。 >>> t1[1] (4, 5, 6) 囲まれたタプルのその他のアイテムは、内部インデックスを使用して取得することもできます >

  2. Pythonで文字列を辞書に変換する方法は?

    ここでast.literal_eval()を使用して、文字列をPython式として評価できます。式ノードまたはPython式を含む文字列を安全に評価します。提供される文字列またはノードは、文字列、数値、タプル、リスト、dict、ブール値、およびなしのPythonリテラル構造のみで構成されます。例:  >>>import ast >>>x = ast.literal_eval("{'foo' : 'bar', 'hello' : 'world'}") >>