我正在爲Minecraft服務器創建一個包裝器,該服務器應該從名爲命令的目錄中接收新命令,該命令包含命令後命名的文件,全部包含用於組成該命令的服務器命令。例如,下面的片段是從定義「告訴」命令文件:Python:將列表中的項目替換爲字符串的高效方法
tell <1> <sender> says: <2>
內部,包裝讀取服務器進程的標準輸出,尋找跡象表明,用戶正在運行的命令。然後它分割命令,從中取出名爲「發送者」的名稱,顯然是發送命令的人,「command」是指示該命令的一個字符串,以及一個名爲args的列表,其中包含參數跟在命令字符串之後。例如,tell命令的語法是這樣的:
tell jim hello
導致以下名稱:
sender = s0lder
command = tell
args = ['jim', 'hello']
我的問題是,假設上面的例子中,我怎麼能做出最終的字符串,說「輸出」,讀作:
tell jim s0lder says: hello
我需要一個基本方式,通過對被括號中定義字符串所包圍的區域,與相應的名稱/中的args列表中的項目,以便:
<sender> = sender
<1> = args[0]
<2> = args[1]
等等,用於args列表中的所有項目。謝謝。
發佈您已經嘗試過的代碼以及失敗的代碼。 – Daenyth 2011-05-02 20:35:09