Python中整数字符串转换为列表


整数字符串是指包含在双引号内的任何数字,而整数列表定义为用逗号分隔的数字列表。在Python中,我们有一些内置函数——len()、isdigit()、append()、map()、fromstring()和split()——将用于整数字符串到列表的转换。

例如

给定的整数字符串:

my_str = “1 2 3 4 5”

最终输出为 [1, 2, 3, 4, 5]

语法

以下语法在示例中使用:

len()

len()是Python中的内置方法,返回对象的长度。

isdigit()

isdigit()是Python中的内置函数,如果所有字符都满足数字条件,则返回true,否则返回false。

append()

append()是Python中的内置函数,它在列表末尾添加元素。

map()

内置函数map()允许为每个元素迭代应用特定函数。

fromstring()

fromstring()使用名为numpy的模块来创建一维数组,其中数组字符串包含数据。

split()

split()是Python中的内置方法,它将字符串以列表的形式分隔。

使用while循环

在下面的示例中,我们将使用while循环,该循环使用一些内置函数和运算符根据特定条件迭代输入字符串,并使用+=运算符用逗号(,)分隔整数字符串以获得整数列表。

示例

str_int = '14 15 17 18'
lst_int = []
i = 0
while i < len(str_int):
    if str_int[i].isdigit():
        num = ''
        while i < len(str_int) and (str_int[i].isdigit() or str_int[i] == '-'):
            num += str_int[i]
            i += 1
        lst_int.append(int(num))
    else:
        i += 1
print("Conversion of integer string into integer list:", lst_int)

输出

 Conversion of integer list into list: [14, 15, 17, 18]

使用map()和split()函数

在下面的示例中,程序首先初始化输入字符串。然后使用一些内置函数,如list()、map()和split()来计算整数字符串到整数列表的转换并获得结果。

示例

int_str = "1 2 3 4 5"
res = list(map(int, int_str.split()))
print("Conversion of integer string into integer list:", res)

输出

Conversion of integer string into integer list: [1, 2, 3, 4, 5]

使用列表推导式

在下面的示例中,程序首先将整数字符串存储在变量int_str中。然后使用列表推导式,其中变量i使用for循环遍历给定的输入字符串int_str,并将其存储在变量lst_int中。显示结果。

示例

int_str = '4573'
lst_int = [int(i) for i in int_str]
print("Conversion of integer string into integer list:", lst_int)

输出

 Conversion of integer string into integer list: [4, 5, 7, 3]

使用numpy模块

在下面的示例中,我们将首先导入名为numpy的模块。然后将整数字符串存储在变量str_int中。接下来,使用内置函数fromstring(),它接受三个参数——str_int(给定的输入)、dtype(使用关键字int指定值为整数)、sep(数据中的分隔符),所有这些过程都将其存储在变量res_list中。最后,我们使用名为res_list的变量打印结果。

示例

import numpy as np
str_int = '11 16 17 14 89'
res_list = np.fromstring(str_int, dtype=int, sep=' ').tolist()
print("Conversion of integer string into integer list:", res_list)

输出

 Conversion of integer string into integer list: [11, 16, 17, 14, 89]

使用for循环

在下面的示例中,程序使用for循环结合内置函数split()迭代输入字符串。使用append(),它将在列表末尾添加元素。最后,显示结果。

示例

str_int = '20 40 61 82 10'
lst_integers = []
for item in str_int.split(' '):
    lst_integers.append(int(item))
print("Conversion of integer string into integer list:", lst_integers)

输出

 Conversion of integer string into integer list: [20, 40, 61, 82, 10]

结论

我们讨论了将整数字符串转换为整数列表的各种方法。这是一个重要的操作,它使用各种内置函数,如isdigit()、append()等,来执行特定任务。此程序通常用于某些应用程序,例如算法问题解决、输入验证和数据预处理。

更新于:2023年8月14日

403 次浏览

开启你的职业生涯

完成课程获得认证

开始学习
广告