我想在列表中分割一个值并将其设为两个值。
arr = [10]
数组应转到:
arr = [1,0]
使用列表理解两次迭代:
>>> [int(x) if x.isdigit() else x for y in arr for x in str(y)]
[1, 0]
>>>
为了以这种格式拆分整数,您可以使用str()
将整数分成几部分。
您只需要对变量而不是列表执行此操作。所以
num = arr[0]
然后将其转换为字符串
string = str(num)
您可以使用list()
将其转换为列表
然后您将使用int()
将多个字符串转换回数字>
所以一起:
>>> arr = [10] >>> num = arr[0] >>> string = str(num) >>> string_arr = list(string) >>> arr = list(map(int, string_arr)) >>> arr [1,0]
或者简化下来而不是使用中间变量。
>>> arr = [10]
>>> arr = list(map(int, str(arr[0])))
>>> arr
[1,0]
可以通过使用映射,列表,转换为字符串,列表理解来解决。
您可以使用while
循环将给定的整数除以10,并产生余数,直到商变为0,然后反转结果列表以获得所需的列表:
您可以使用列表理解: