0
我正在嘗試創建一個python腳本,它在每次迭代中從字典中的列表中選擇下一項,並用當前項替換文本中的鍵。但是,問題是它不會返回與由變量設置的整數相匹配的列表項。Python沒有按變量返回特定的列表項
代碼:
for x in range(0,runs):
for k,v in shortcodes.iteritems():
description = description.replace('{'+k+'}', v[x])
print description
只需繼續與第一列表項文本替換鍵值,而不是增加。如果我手動刪除x
並將其設置爲更高的整數,則它會正確響應。同樣,爲了理智,印刷x
,因爲它確認x
正在增加。
那麼,爲什麼它忽略x
和0
?
這是否仍然有問題,你指出,但?換句話說,更大的問題是'description = description.replace('{'+ k +'}',x)'應該確實是'new_description = description.replace('{'+ k +'}',x )',對吧? – Tim 2014-11-05 15:32:59
啊你是對的,但這是一個新問題。因爲你現在每次都要替換整個字符串,但是有一個新的值。您應該只更換''''''''''''''''的子字符串。您可以使用'find'在字符串中找到索引 – muthan 2014-11-05 19:07:56
非常好!我將不得不對'find'和'index'做更多的研究。 – Tim 2014-11-10 14:13:12