gpt4 book ai didi

python - 如何拆分一个元素并用python替换列表中的两个部分

转载 作者:行者123 更新时间:2023-12-05 08:14:11 27 4
gpt4 key购买 nike

我有一个这样的列表:

mylist = ['La', 'domestication', "d'un", 'animal', 'ou', "d'un", 'végétal,', 'necessite', "l'acquisition", "d'une", 'ferme']

我想将内部有“'”的元素拆分为 2 个元素,并将它们的索引保留在原始列表中。

OUTPUT REQUESTED : my_new_list = ['La', 'domestication', "d'" ,'un', 'animal', 'ou', "d'", 'un', 'végétal,', 'necessite', "l'", 'acquisition', "d'", 'une', 'ferme']

我尝试了一些东西,但我承认我坚持要替换正确索引中的两个新拆分元素,这是我尝试过的代码:

for word in mylist:
if "'" in word:
new_words = word.split("'")
mylist[mylist.index(word)] = (new_words[0]+"'")
mylist.insert(mylist.index((new_words[0]+"'")+1), new_words[1])

print(mylist)

感谢您的宝贵时间和帮助:)

最佳答案

假设您对创建新列表感到满意,实现这一点的一种方法是将现有列表与空格连接在一起,然后按空格或 ' 拆分:

import re

mylist = [
'La', 'domestication', "d'un",
'animal', 'ou', "d'un", 'végétal,',
'necessite', "l'acquisition",
"d'une", 'ferme'
]

my_new_list = re.split(r" |(?<=')", ' '.join(mylist))

输出:

[
'La', 'domestication', "d'", 'un',
'animal', 'ou', "d'", 'un', 'végétal,',
'necessite', "l'", 'acquisition',
"d'", 'une', 'ferme'
]

请注意,这是假设列表中的单词没有空格;如果可能的话,您可以用单词中没有出现的字符(或字符序列)替换代码中的空格,例如\0:

my_new_list = re.split(r"\0|(?<=')", '\0'.join(mylist))

关于python - 如何拆分一个元素并用python替换列表中的两个部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72405721/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com