我有一個循環,我改變一個列表,然後使用format
建立一個新的字符串。當使用這種線問題與格式和列表
strCommand = strCommand.format(*strCmdVars)
我發現,當我從我的數據,strCommand
迭代將保持其原始值的字符串不會更新。但是,當我將其更改爲此
strCmd = strCommand.format(*strCmdVars)
事情開始按預期工作。 我絆倒了一些奇怪的東西,還是我第一次做錯了? 這是下的Python 3.4.3版本在Windows 7上 跑這裏有一些細節一起工作:
strCommand = "show run {0} access-list {1}" strCmdVars = ["ipv6","FWG31"]
在實際的腳本中,我使用追加這樣
strCmdVars.append(parts1) strCmdVars.append(parts2)
然後當我遍歷我正在閱讀的文件(這是part1和part2的值來自哪裏)的文件時,我在循環的末尾做了
strCmdVars[0]=parts1 strCmdVars[1]=parts2
爲了簡化,我的例子是外推。由於我通過文件strCmdVars循環可以持有任何這些值:
的IPv6,FWG31
的IPv4,FWG32
的IPv4,FWG33
的IPv6,FWG34
的IPv4,FWG31
等
我驗證了strCmdVars的值確實正在使用dbp調試更改爲正確的值,並且strCommand的值未發生更改並保持爲初始值。
非常奇怪。你可以用一個具體的例子(strCmdVars和strCommand的值)來編輯你的問題,這樣我們就可以運行它並在我們這邊測試了嗎? –
編輯了這個問題,並提供了更多的細節和例子。 – Siggi