首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >可以使用split()来划分数字字符串吗?

可以使用split()来划分数字字符串吗?
EN

Stack Overflow用户
提问于 2021-07-29 23:18:13
回答 1查看 27关注 0票数 1

我有一串数字:

代码语言:javascript
运行
复制
str = "4284902384902384093284" 

output = []

我想将str分成3位数的字符串,并将其存储在output中。

有没有什么办法我可以使用split()来做这件事?

我已经用two for loopsslicing做到了这一点。

我对split()的问题是,您需要告诉Python分成什么部分,但是由于str只是一个很长的数字列表(没有任何东西,甚至数字之间没有空格),我不确定如何应用split()

代码语言:javascript
运行
复制
str.split(" ") 

不工作,str.split("")也不工作。我的想法是把它放到一个数组str = [str]中,但是我不能完全使用split()。

代码语言:javascript
运行
复制
So for the above input, I would like it to produce: 

output = ["428","490","238",....]
EN

回答 1

Stack Overflow用户

发布于 2021-07-29 15:24:06

使用split不能做到这一点,但是可以使用带有分片的列表表达式。

代码语言:javascript
运行
复制
output = [string[i:i+3] for i in range(0, len(string), 3)]

对于您的示例字符串,它会生成:

代码语言:javascript
运行
复制
['428', '490', '238', '490', '238', '409', '328', '4']

正如其他人提到的,您也可以使用正则表达式。这里有一种方法:

代码语言:javascript
运行
复制
re.findall(r"\d{1,3}", string)

也会产生同样的结果。

此外,将字符串命名为str也不是很好,因为这是内置string类的名称。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68578615

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档