整数のリストを文字列に変換したい。整数のリストを作成する方法は次のとおりです。
new = [0] * 6
for i in range(6):
new[i] = random.randint(0,10)
このような:
新規== [1,2,3,4,5,6]
出力== '123456'
これを行うには確かに洗練された方法がありますが、これは非常に簡単な方法です。
mystring = ""
for digit in new:
mystring += str(digit)
文字のリストを文字列に変換する で、あなたはただ行うことができます
''.join(map(str,new))
これを行う2つの簡単な方法
"".join(map(str, A))
"".join([str(a) for a in A])
少し遅れて、どういうわけか質問が拡張されますが、array
モジュールを利用して次のように使用できます。
_from array import array
array('B', new).tobytes()
b'\n\t\x05\x00\x06\x05'
_
実際には、整数のリストから1バイト幅の整数の配列(引数_'B'
_)を作成します。次に、配列はバイナリデータ構造として文字列に変換されるため、出力は期待どおりに表示されません(この点はdecode()
で修正できます)。ただし、これは最も高速な整数から文字列への変換方法の1つであり、メモリを節約する必要があります。ドキュメントと関連する質問も参照してください。
https://www.python.org/doc/essays/list2str/
文字列型に変換し、「文字列」変数に追加しながら、リスト内の整数をループできます。
for int in list:
string += str(int)