Python:如何用列表中的下一个值替换子字符串?

2024-05-08 00:39:51 发布

您现在位置:Python中文网/ 问答频道 /正文

我有以下字符串和列表:

myString = "a:::b:::c:::d ..... "  where ':::' is sort of delimiter
myList = [1,2,3,4.......]

我知道如何循环遍历列表值,但如何用列表中的下一个值替换每次出现的“::”,以便最终输出如下:

myString = "a1b2c3d ...."

Tags: of字符串列表iswheresortdelimitermystring
3条回答

我就是这样解决的。你知道吗

def join_string_and_list( string, list ):
    string = string.split(":::")
    for i in range(0, len(string)):
        if string[i] != '' and len(list) > 0:
            string.append("{}{}".format(string.pop(0),list.pop(0)))

    return str("".join(string))

myString = "a:::b:::c:::d:::"  #where ':::' is sort of delimiter
myList = [1,2,3,4]

print(join_string_and_list( myString, myList ))

快脏(&D):

myString = "a:::b:::c:::d"
myList = [1,2,3,4]

s = iter(myString.split(":::"))

print(next(s) + "".join(str(y)+x for x,y in zip(s,myList)))

打印a1b2c3d

l = myString.split(":::")    
result = "".join([x + str(y) for (x,y) in zip(l, myList)])

相关问题 更多 >