假设我有一个像x
我想检索此数组的前7个字符而忽略单元格。所以在这种情况下,如果没有连接各个数组元素,[4, 55, 578, 43, 81, 62, 7181]
是可能的吗?感谢。
答案 0 :(得分:4)
你可以做到
''.join(map(str, arr))[:7]
如果arr
非常长,这会浪费时间和空间,因为它会将整个事物转换为字符串,只是为了获取前7个字符。相反,您只能转换前7个元素(假设每个元素至少有一个长度),将 转换为字符串,然后取前7个字符。
''.join(map(str, arr[:7]))[:7]
答案 1 :(得分:2)
我假设你想避免连接整个数组。为了避免这种情况,你可以这样做:
a = [4, 55, 578, 43, 81, 62, 7181]
length = 7
chars = ''
counter = 0
while len(chars) < length:
chars = chars + str(a[counter])
counter = counter + 1
chars = chars[:length]
print chars, len(chars)
这会不断添加数组条目中的更多字符,直到字符长度大于您选择的数字。然后它会过滤从最终条目中添加的任何额外字符。
答案 2 :(得分:2)
您可以使用join
和列表理解
"".join(str(x) for x in lst)[:7]