看板 Python 關於我們 聯絡資訊
※ 引述《wayne670225 (北極熊在英國)》之銘言: : 請問一下於python 2.7 中 : self.currentini = {'debug' : 'on'} : def verify_currentlyini(self,(key,value)): : self.currentini[str(key).split('$')[1]]=str(value) : 但是更改python 3.6 : self.currentini = {'debug' : 'on'} : def verify_currentlyini(self,key,value): : self.currentini[str(key).split('$')[1]]=str(value) : TypeError: modify_currentlyini() missing 1 required positional argument: : 'value' : 請問大家該如何更改我的程式 ? self.currentint = {'debug' : 'on'} def varify_currentlyini(self, key_value): key, value = key_value self.currentini[str(key).split('$')[1]] =str(value) 主要是傳入的時候不能直接宣告他是一個tuple 所以把tuple設成一個變數 讀進來的時候再拆開 以下是範例 def demo(c): a,b = c print(b) demo(('Hello','world')) ------------------- result: world -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.38.10.187 ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1530688219.A.F78.html ※ 編輯: TuCH (114.38.10.187), 07/04/2018 15:11:23
pmove: lib2to3的確就是這樣轉的沒錯,可是如果是用lib2to3轉的應 07/04 21:45
pmove: 該不會有這個問題才對,有點懷疑原發問者故意製造這問題的 07/04 21:47
HenryLiKing: 學到了!原來不行一開始就宣告為tuple!!!!!!!!!! 07/04 22:51
wayne670225: 多謝大家, python 3.7 傳進去的東西就不能是tuple 07/12 08:46
wayne670225: 多謝 TuCH demo的範例, 問題已解決 07/12 08:47
wayne670225: https://www.python.org/dev/peps/pep-3113/ 07/12 08:47