GeeksforGeeks

10月 13, 2021
admin

文字列のリストが与えられたとき、与えられたリストの各要素をサブリストに変換するPythonプログラムを書きなさい。

例:

Input : Output : , , ]Input : Output : , , , , ]

Approach #1 : Naive Approach

Use another list ‘res’ and a for a loop. Pythonのsplit()メソッドを使って、リストから各要素をリスト自身の形で取り出し、resに追加します。 最後にresを返します。 このメソッドの欠点は、int型オブジェクトにはsplitという属性がないため、整数型リストでは動作しないことです。

def extractDigits(lst):
res =
for el in lst:
sub = el.split(', ')
res.append(sub)
return(res)
lst =
print(extractDigits(lst))



出力します。

, , ]

アプローチ2:リスト内包

リスト内包は余分なスペースを使わないので、効率的なアプローチと言えます。 リスト内の各要素 ‘el’ に対して、単に出力リストに追加するだけです。

def extractDigits(lst):
return for el in lst]
lst =
print(extractDigits(lst))



出力します。

, , ]

Approach #3 : Python map()

このコードでは、与えられた反復変数「lst」の各項目について関数el:をマップしています。 したがって、各要素はリストそのものとして出力されます。

def extractDigits(lst):
return list(map(lambda el:, lst))
lst =
print(extractDigits(lst))


出力します。

, , ]

記事タグ:

コメントを残す

メールアドレスが公開されることはありません。