嵌套两个
如何将二维整数列表转换为基于ascii值的字符串?例如,我输入[[97,97,97],[98,98]],并且我希望输出为[aaa','bbb']
def to_string2(a):
for subarr in a:
for ele in subarr:
''.join(chr(i) for i in ele)
我有以下代码,我只是随机输入,看看我是否能找到一些工作,因为我不知道如何做。如果有任何帮助,我将不胜感激。
您可以使用列表理解:
lst = [[97,97,97], [98,98,98]]
output = [''.join(map(chr, sublst)) for sublst in lst]
print(output) # ['aaa', 'bbb']
为了修复代码,该代码具有过多级别的for
循环。尝试:
output = []
for sublst in lst:
output.append(''.join(chr(i) for i in sublst))
会起作用。
.join
就可以了。试试这个:
' '.join([''.join([str(el) for el in subarr]) for subarr in arr])
你做了太多的迭代
- 在每个子列表
for subarr in a
上迭代 - 迭代每个int
for ele in subarr
- 不能迭代int
for i in ele
def to_string2(a):
result = []
for subarr in a:
result.append(''.join(chr(ele) for ele in subarr))
return result
def to_string2(a):
return ["".join([chr(i) for i in subarr]) for subarr in a]
print(to_string2([[97,97,97], [98,98,98]]))