[英]Python: How to replace substring occurrences with next values from list?
我有以下字符串和列表:
myString = "a:::b:::c:::d ..... " where ':::' is sort of delimiter
myList = [1,2,3,4.......]
我知道如何循環遍歷列表值,但是如何用列表中的下一個值替換每次出現的':::',這樣我的最終輸出如下:
myString = "a1b2c3d ...."
快速與骯臟:
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)])
這是我解決的方法。
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 ))
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.