Python:如何从每个元素中有2位数字的str编号创建列表?

Python:如何从每个元素中有2位数字的str编号创建列表?,python,list,Python,List,我是python新手,我需要将一个输入数字拆分为一个包含2位元素的列表,我认为应该有一种更简单的方法来实现这一点 我的代码如下: num = int(input("Número: ")) list = [int(i) for i in str(num)] print(list) 结果是: Número: 34676585535435678 [3, 4, 6, 7, 6, 5, 8, 5, 5, 3, 5, 4, 3, 5, 6, 7, 8] 但我需要这个: [34, 67, 65

我是python新手,我需要将一个输入数字拆分为一个包含2位元素的列表,我认为应该有一种更简单的方法来实现这一点

我的代码如下:

  num = int(input("Número: "))

 list = [int(i) for i in str(num)]

 print(list)
结果是:

Número: 34676585535435678
[3, 4, 6, 7, 6, 5, 8, 5, 5, 3, 5, 4, 3, 5, 6, 7, 8]
但我需要这个:

[34, 67, 65, 85, 53, 54, 35, 67, 8]
有什么建议吗?

试试:

map(int, [x[2*i:2*i + 2] for i in range(int(ceil(len(str(num)) / 2.)))])
对于上面的示例,它返回

[34, 67, 65, 85, 53, 54, 35, 67, 8]
这会将字符串分割为一对连续的数字对(最后一对可能不是一对的一部分除外),然后将其转换为
int
s

与此无关,最好不要用变量覆盖现有的python保留名称(例如,
list

map(int, [x[2*i:2*i + 2] for i in range(int(ceil(len(str(num)) / 2.)))])
对于上面的示例,它返回

[34, 67, 65, 85, 53, 54, 35, 67, 8]
这会将字符串分割为一对连续的数字对(最后一对可能不是一对的一部分除外),然后将其转换为
int
s


与此无关,最好不要用变量覆盖现有的python保留名称(例如,
list
)。

首先将int转换为字符串,然后将其拆分,最后再将其转换回int列表

x = 34676585535435678
y = str(x)
size = 2 # Set how you would like to split the string 

z = [ int(y[i:i+size]) for i in range(0, len(y), size) ]

print(z) # [34, 67, 65, 85, 53, 54, 35, 67, 8]

首先将int转换为字符串,然后将其拆分,最后再将其转换回int列表

x = 34676585535435678
y = str(x)
size = 2 # Set how you would like to split the string 

z = [ int(y[i:i+size]) for i in range(0, len(y), size) ]

print(z) # [34, 67, 65, 85, 53, 54, 35, 67, 8]

虽然没有接受链接的答案,但这似乎是此处答案的副本:似乎是的完全副本:虽然没有接受链接的答案,但这似乎是此处答案的副本:似乎是以下内容的完全副本: