我想将整数列表转换为字符串。以下是我创建整数列表的方法:
new = [0] * 6
for i in range(6):
new[i] = random.randint(0,10)
像这样:
new == [1,2,3,4,5,6]
输出==' 123456'
答案 0 :(得分:24)
使用Convert a list of characters into a string即可
''.join(map(str,new))
答案 1 :(得分:7)
肯定有一种更为灵巧的方法,但这是一种非常直接的方式:
mystring = ""
for digit in new:
mystring += str(digit)
答案 2 :(得分:1)
两种简单的方法
"".join(map(str, A))
"".join([str(a) for a in A])
答案 3 :(得分:0)
稍微延迟并以某种方式扩展问题,但您可以利用array
模块并使用:
from array import array
array('B', new).tobytes()
b'\n\t\x05\x00\x06\x05'
实际上,它会从整数列表中创建一个1字节宽的整数数组(参数'B'
)。然后将数组转换为字符串作为二进制数据结构,因此输出将不会如您所期望的那样(您可以使用decode()
来修复此点)。然而,它应该是最快的整数到字符串转换方法之一,它应该节省一些内存。另见文档和相关问题:
https://www.python.org/doc/essays/list2str/
答案 4 :(得分:-1)
您可以在列表中的整数之间循环,同时转换为字符串类型并追加到“ string”变量。
for int in list:
string += str(int)