根据Python中包含的字母顺序拆分同一列表

我正在尝试根据包含的字母顺序拆分单词:

import re

word = "Discovery"
split_pattern = re.compile(r'[?=r]') 
new_word = split_pattern.split(word)
print(new_word)

split_pattern2 = re.compile(r"[?=e]")
new_word2 = split_pattern2.split(str(new_word)) 
print(new_word2)

['Discove','y']
["['Discov","','y']"]

我有三个问题:

如何在Discove的末尾保持r并向右分割? (即“ Discove”,“ r”,“ y”为下一部分)

如何维护单个列表,而不是在带有双方括号的列表中获取列表?

为什么第二个“摘要”中的Discov被单引号和单引号引起来?

weika123456789 回答:根据Python中包含的字母顺序拆分同一列表

我不确定我是否正确,但是我猜str.partition会做您想要的事情。参见:

Python 3.7.5 (default,Oct 17 2019,12:16:48) 
[GCC 9.2.1 20190827 (Red Hat 9.2.1-1)] on linux
Type "help","copyright","credits" or "license" for more information.
>>> 'Discovery'.partition('r')
('Discove','r','y')
>>> 'Discovery'.partition('e')
('Discov','e','ry')
>>> 

您还可以选中str.rpartition

希望对您有帮助。

,

对于多个实例,您可以通过以下方式使用str.split()函数:

char = 'r'
text = 'DiscoveryTurbo'
opt = []
for x in text.split(char)
   opt.extend([x,char]) 
opt = opt[:-1]

o / p:

['Discove','yTu','bo']
本文链接:https://www.f2er.com/2977791.html

大家都在问