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

Pythonで整数行列を文字列行列に変換する方法

Pythonでは、整数の行列(ネストされたリスト)を文字列の行列に変換したい場合、リスト内包表記を使うことで簡潔に実装できます。各行の要素に対して str() 関数を適用するだけで、すべての整数を文字列へ変換できます。

サンプルコード

以下は、整数行列を文字列行列に変換する具体的な例です。

my_list = [[14, 25, 17], [40, 28, 13], [59, 44, 66], [29, 33, 16]]

print("元のリスト:")
print(my_list)

my_result = [[str(element) for element in index] for index in my_list]

print("変換後のリスト:")
print(my_result)

実行結果

元のリスト:
[[14, 25, 17], [40, 28, 13], [59, 44, 66], [29, 33, 16]]
変換後のリスト:
[['14', '25', '17'], ['40', '28', '13'], ['59', '44', '66'], ['29', '33', '16']]

コードの解説

  • まず、整数を格納した2次元リスト(行列)を定義し、コンソールに表示します。
  • 次に、リスト内包表記を使って外側のリスト(各行)を反復処理します。
  • 内側のリスト内包表記 [str(element) for element in index] により、各行の各要素が str() 関数で文字列に変換され、新しいリストとして格納されます。
  • 変換結果は変数 my_result に代入され、最後にコンソールへ出力されます。

補足:map関数を使う方法

同様の処理は map() 関数を組み合わせても実現できます。

my_result = [list(map(str, row)) for row in my_list]

どちらの方法でも結果は同じですが、リスト内包表記の方が意図が読み取りやすいというメリットがあります。データをCSV形式で保存したり、文字列操作を行ったりする際に、このような型変換はよく使われるテクニックです。

  1. Pythonで整数を8進数の文字列に変換する方法を解説

    Pythonで整数を8進数に変換するには?Pythonでは、組み込み関数 oct() を使うことで、任意の整数を8進数表現の文字列に簡単に変換できます。この関数は、8進数であることを示す接頭辞「0o」が付いた文字列を返します。oct() 関数の基本的な使い方引数に整数を渡すだけで、8進数表現の文字列が得られます。10進数はもちろん、16進数や2進数で書かれた整数リテラルも変換できます。>>> oct(100) 0o144 >>> oct(0x10) 0o20 >>> oct(10) 0o12負の整数の場合負の整数を渡した場合も問題なく動作し

  2. Pythonで整数を16進数の文字列に変換する方法を解説

    Pythonで整数を16進文字列に変換する基本の方法Pythonでは、組み込み関数 hex() を使うことで、任意の整数を簡単に16進数表記の文字列へ変換できます。変換結果には自動的に「0x」というプレフィックスが付きます。>>> hex(100) 0x64 >>> hex(4095) 0xfff >>> hex(31) 0x1fhex()関数のポイントhex() 関数は引数として整数(int型)を受け取り、16進数を表す文字列(str型)を返します。負の整数を渡した場合は、マイナス記号が付いた形式で出力されます。>>>