logo

リストを辞書 Python に変換する

与えられたリストを指定して、すべての奇数の要素がキーを持ち、偶数の要素が値を持つように、指定されたリストを辞書に変換する Python プログラムを作成します。以来、 パイソン 辞書は順序付けされていないため、出力は任意の順序で行うことができます。



  Input :    ['a', 1, 'b', 2, 'c', 3]   Output:   {'a': 1, 'b': 2, 'c': 3}   Explaination  : In the input we have a list of element which then is conerted into key value pairs of dictonary in the output>

リストを辞書 Python に変換する

この記事で説明する方法は次のとおりです。

ループを使用してリストを辞書に変換する

このメソッドは空のオブジェクトを初期化することで機能します。 辞書 各反復では、現在の要素をキーとして使用し、次の要素を値として使用して、キーと値のペアが辞書に追加されます。最後に、辞書が結果として返されます。

ラテックスの偏微分

Python3








def> convert(lst):> >res_dict>=> {}> >for> i>in> range>(>0>,>len>(lst),>2>):> >res_dict[lst[i]]>=> lst[i>+> 1>]> >return> res_dict> lst>=> [>'a'>,>1>,>'b'>,>2>,>'c'>,>3>]> print>(convert(lst))>

>

>

出力

{'a': 1, 'b': 2, 'c': 3}>

時間計算量: O(n)。n は入力リストの長さです。
補助スペース: O(n)。n は入力リストの長さです。

リストから辞書への会話 dict 内包表記を使用する

リストを辞書に変換するには、次を使用できます。 辞書の理解 連続した要素のキー:値のペアを作成します。最後に、リストを次のように入力します。 辞書 タイプ。

Python3




def> Convert(lst):> >res_dct>=> {lst[i]: lst[i>+> 1>]>for> i>in> range>(>0>,>len>(lst),>2>)}> >return> res_dct> > # Driver code> lst>=> [>'a'>,>1>,>'b'>,>2>,>'c'>,>3>]> print>(Convert(lst))>

>

>

出力

{'a': 1, 'b': 2, 'c': 3}>

時間計算量: O(n)。n は入力リストの長さです。
補助スペース: O(n)。n は入力リストの長さです。

リストを辞書に変換する 歌う ジップ() 方法

まずイテレータを作成し、それを変数「it」に初期化します。次に、使用します ジップ 方法 、キーと値を一緒に圧縮します。最後にそれを型キャストします 辞書 タイプ。

Python3




def> Convert(a):> >it>=> iter>(a)> >res_dct>=> dict>(>zip>(it, it))> >return> res_dct> # Driver code> lst>=> [>'a'>,>1>,>'b'>,>2>,>'c'>,>3>]> print>(Convert(lst))>

音楽をダウンロードする方法

>

>

出力

{'a': 1, 'b': 2, 'c': 3}>

時間計算量: O(n)。n は入力リスト a の長さです。
補助スペース: O(n)。n は入力リスト a の長さです。

Lambda 関数を使用したリストから辞書への会話

まず、配列スライスを使用してキーと値の配列を作成します。次に、 マップメソッド ラムダ キー値 paris を持つタプルの配列を形成します。最後に dict 型に型キャストします。

パイソン


ローカル日付Java



def> Convert(lst):> >res_dct>=> map>(>lambda> i: (lst[i], lst[i>+>1>]),>range>(>len>(lst)>->1>)[::>2>])> >return> dict>(res_dct)> # Driver code> lst>=> [>'a'>,>1>,>'b'>,>2>,>'c'>,>3>]> print>(Convert(lst))>

>

>

出力

{'a': 1, 'c': 3, 'b': 2}>

時間計算量: O(n)。n は辞書内のキーと値のペアの数です。
補助スペース: O(n)、キーと値を辞書に保存します。

リストを辞書に変換する リスト内包表記とスライスの使用

スライス lst[::2] を使用してキーのリストを取得するための入力リスト。これは、リストの最初の要素から始まる 2 つおきの要素を取得します。lst[1::2] を使用して入力リストをスライスし、値のリストを取得します。これにより、リストの 2 番目の要素から始まる 2 番目の要素が取得されます。を使用して辞書を作成します。 辞書の理解力 これは、キー リストのインデックスを反復処理し、各キーを値リストの対応する値と組み合わせます。

結果の辞書を返します。

Python3




def> convert(lst):> >keys>=> lst[::>2>]># slice the list to get keys> >values>=> lst[>1>::>2>]># slice the list to get values> >res_dict>=> {keys[i]: values[i]>for> i>in> range>(>len>(keys))}> >return> res_dict> lst>=> [>'a'>,>1>,>'b'>,>2>,>'c'>,>3>]> print>(convert(lst))># {'a': 1, 'b': 2, 'c': 3}>

vlc メディア プレーヤー ダウンロード youtube
>

>

出力

{'a': 1, 'b': 2, 'c': 3}>

時間計算量: の上)
補助スペース: の上)。

Itertools を使用してリストを辞書に変換する

インポートする イターツール モジュール 。使用 zip_longest() 元のリストからタプルのリストを作成する関数。この関数は、リストの長さが奇数であっても、要素をペアにグループ化します。辞書内包表記を使用して、タプルのリストから辞書を作成します。辞書を返します。

上記のアプローチの実装を以下に示します。

Python3




import> itertools> def> convert(lst):> >pairs>=> itertools.zip_longest(>*>[>iter>(lst)]>*> 2>, fillvalue>=>None>)> >dct>=> {key: value>for> key, value>in> pairs}> >return> dct> lst>=> [>'a'>,>1>,>'b'>,>2>,>'c'>,>3>]> print>(convert(lst))>

>

>

出力

{'a': 1, 'b': 2, 'c': 3}>

時間計算量: の上)
補助スペース: O(n) (タプルのリストを保存するため)