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

Pythonで数値文字列のリストを整数のリストに変換します


Pythonを使用したデータ操作の場合、リストに数値を含む文字列があるシナリオに遭遇する可能性があります。計算できるようにするには、文字列を数値に変更する必要があります。この記事では、リスト内で文字列を数値に変更する方法を説明します。

int付き

int関数は、リストの文字列要素を整数に変換するために適用できます。 1つの要素内に複数の文字列がある場合でも、各要素を通過して結果を取得するために、forループを慎重に設計する必要があります。

listA = [['29','12'], ['25'], ['70']]
# Given lists
print("Given list A: ", listA)
# Use int
res = [[int(n) for n in element] for i in listA for element in i]
# Result
print("The numeric lists: ",res)

出力

上記のコードを実行すると、次の結果が得られます-

Given list A: [['29', '12'], ['25'], ['70']]
The numeric lists: [[2, 9], [1, 2], [2, 5], [7, 0]]

地図付き

また、この関数に提供される各パラメーターに特定の関数を繰り返し適用するmap関数を使用することもできます。各内部リストから要素をフェッチするforループを作成します。内部リストに複数の要素が含まれている場合、このアプローチは機能しません。

listA = [['29'], ['25'], ['70']]
# Given lists
print("Given list A: ", listA)
# Use map
res = [list(map(int, list(elem[0]))) for elem in listA if elem ]
# Result
print("The numeric lists: ",res)

出力

上記のコードを実行すると、次の結果が得られます-

Given list A: [['29'], ['25'], ['70']]
The numeric lists: [[2, 9], [2, 5], [7, 0]]

  1. 文字列をPythonで単語のリストに変換する方法は?

    単語のリスト内の文字列を変換するには、空白で文字列を分割する必要があります。文字列クラスからsplit()を使用できます。このメソッドのデフォルトの区切り文字は空白です。つまり、文字列で呼び出されると、その文字列が空白文字で分割されます。 例 >>> "Please split this string".split() ['Please', 'split', 'this', 'string'] 正規表現を使用して、この問題を解決することもできます。正規表現\s +を区切り文字として使用して、

  2. Pythonでリストの文字列表現をリストに変換するにはどうすればよいですか?

    ここでast.literal_eval()を使用して、文字列をPython式として評価できます。式ノードまたはPython式を含む文字列を安全に評価します。提供される文字列またはノードは、次のPythonリテラル構造のみで構成されます:文字列、数値、タプル、リスト、dict、ブール値、およびなし。 例 fruits = "['apple', 'orange', 'banana']" import ast fruits = ast.literal_eval(fruits) print fruits[1], fruits[0]