python将字符串数字拆分为数字

Posted

技术标签:

【中文标题】python将字符串数字拆分为数字【英文标题】:python split string number in digits 【发布时间】:2014-12-17 01:30:20 【问题描述】:

您好,我想在 python 的 ['1', '2', '3', '4'] 中拆分以下字符串“1234”。

我目前的方法是使用 re 模块

import re
re.compile('(\d)').split("1234")
['', '1', '', '2', '', '3', '', '4', '']

但是我得到了一些额外的空字符串。我不是正则表达式方面的专家,在 python 中什么是正确的正则表达式来完成我的任务?

请给我一些建议。

【问题讨论】:

【参考方案1】:

只需使用list函数,像这样

>>> list("1234")
['1', '2', '3', '4']

list 函数迭代字符串,并创建一个包含所有字符的新列表。

【讨论】:

另外,如果你有一个包含非数字元素的字符串,你可以像这样使用列表推导 [i for i in "1234abcd" if i.isdigit()] 太棒了,这很好用。我不知道可以从字符串创建一个列表。这很简单。【参考方案2】:

默认情况下,字符串是字符列表:

>>> nums = "1234"
>>> for i in nums:
...     print i
... 
1
2
3
4
>>> nums[:-1]
'123'

【讨论】:

以上是关于python将字符串数字拆分为数字的主要内容,如果未能解决你的问题,请参考以下文章

将字符串拆分为文本和数字

如何将数字拆分为数字并在其间添加一个字符

在 Python 中,如何将字符串拆分为多个整数?

在python中拆分数字字符串[重复]

如何在 C++ 中将数字字符串拆分为数组? [复制]

如何在python中用数字、字母和空格分割字符串?