首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >python中的字符串操作问题

python中的字符串操作问题
EN

Stack Overflow用户
提问于 2020-05-14 13:05:09
回答 5查看 70关注 0票数 0

我一直在从事WhatsApp Chat的python数据可视化项目。我有一根这样的绳子。

代码语言:javascript
复制
line = '[14/11/18, 2:47:26 PM] Chaitanya: Yeah, Lets go to the movies to night'

我想把它分解成这样。

代码语言:javascript
复制
['[14/11/18, 2:47:26 PM]', 'Chaitanya: Yeah, Lets go to the movies to night']

我尝试过使用split()函数,但我似乎无法得到完全相同的东西。此外,第一次字段将发生变化,因此该字段的长度可能不会每次都相同。

我会提供一些帮助。谢谢。

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2020-05-14 13:13:31

发现 ]的第一次出现并用于切片

代码语言:javascript
复制
[line[:line.find(']')+1],line[line.find(']')+2:]]

顺便说一句:使用帮助器变量来查找结果应该更快,当您执行DataViz时,这可能对您更好:

代码语言:javascript
复制
f=line.find(']')
[line[:f+1],line[f+2:]]

来自时间的结果:

代码语言:javascript
复制
>>> import timeit
>>> timeit.timeit("line = '[14/11/18, 11:47:26 PM] Chaitanya: Yeah, Lets go to the movies [to] night'; [line[:line.find(']')+1],line[line.find(']')+2:]]")
0.33965302700016764
>>> timeit.timeit("line = '[14/11/18, 11:47:26 PM] Chaitanya: Yeah, Lets go to the movies [to] night'; f=line.find(']'); [line[:f+1],line[f+2:]]")
0.21619235799971648
票数 1
EN

Stack Overflow用户

发布于 2020-05-14 13:08:02

试试这个:

代码语言:javascript
复制
r = line.split(']', 1)
r[0] += ']'
票数 1
EN

Stack Overflow用户

发布于 2020-05-14 13:12:17

代码语言:javascript
复制
line = '[14/11/18, 2:47:26 PM] Chaitanya: Yeah, Lets go to the movies to night'
reslist =line.split(']',1)
reslist[0] += "]" # needed because split removes delimiter
reslist[1] = reslist[1].lstrip()
print(reslist) # ['[14/11/18, 2:47:26 PM]', 'Chaitanya: Yeah, Lets go to the movies to night']
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61798102

复制
相关文章

相似问题

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