将由空格分隔的整数字符串更改为 int 列表

2022-01-14 00:00:00 python list string int

问题描述

我如何制作类似的东西

x = '1 2 3 45 87 65 6 8'

>>> foo(x)
[1,2,3,45,87,65,6,8]

我完全卡住了,如果我按索引来做,那么超过 1 位的数字将被分解.请帮忙.

I'm completely stuck, if i do it by index, then the numbers with more than 1 digit will be broken down. Help please.


解决方案

最简单的解决方案是使用.split()创建字符串列表:

The most simple solution is to use .split()to create a list of strings:

x = x.split()

或者,您可以将列表推导式与 .split() 方法:

Alternatively, you can use a list comprehension in combination with the .split() method:

x = [int(i) for i in x.split()]

您甚至可以使用地图 map 作为第三个选项:

You could even use map map as a third option:

x = list(map(int, x.split()))

如果你想要整数,这将创建一个 intlist.

This will create a list of int's if you want integers.

相关文章