2016-11-28 92 views
-4

將字符串傳遞給函數後,Python會生成其他雙引號。例如:Python將不需要的雙引號添加到字典中

def main(): 
    ... 
    foo("string1", "'string2','string3'") 
    ... 
def foo(var1, var2): 
    dictionary = { 
     'a' : var1, 
     'b' : [var2] 
    } 
    print(dictionary) 

我需要將var2放在方括號中以表示接下來的內容。以下是輸出:

{'a': 'string1', 'b': ["'string2','string3'"]} 

如何附加雙引號去掉,這樣'b': ['string2','string3']

+0

你傳遞''''string2','string3'「'它將被視爲一個字符串,這就是你以這種方式得到它的原因。 –

+1

它沒有添加任何東西。看看你的原始數據。 – TigerhawkT3

+0

你知道** _你_ **在原始數據中有雙引號,對吧? –

回答

-2
'b' : [x[1:-1] for x in var2.split(",")] 

split分離子,和[1:-1]刪除引號。

+0

與其他答案一樣的問題。實際的問題是OP不理解字符串。 – TigerhawkT3

+0

像魔術一樣工作!這正是我需要的;謝謝。 – jsc

+2

@macmoonshine此外,這些問題不應回答。很顯然,OP需要Python中的字符串文字教程,而不是「快速修復」解決方案。我建議閱讀meta文章[我們是否應該教人們爲他們思考](http://meta.stackoverflow.com/questions/338492/should-we-be-teaching-people-to-think-for-mselves ?cb = 1) –

相關問題