2013-07-01 101 views
1

在Python中我有一個輸入是這樣Python的拆分忽略逗號

var1,var2,var3,var4,var5,var6,var7 

我使用的分裂到了分裂的變量轉化爲自己的獨立變量這樣

stringone = var1,var2,var3,var4,var5,var6,var7 
var1, var2, var3, var4, var5, var6, var7 = stringone.split(',') 

字符串然後,我稍後使用它們,但有時var7包含逗號或多個逗號(例如var7可能等於'This,is'like')。然後這樣就會把它們分開,因爲看起來var7實際上是多個變量。

我該如何解決這個問題,讓它將var7視爲一個變量而不是mutlicples,即使它在變量中找到一個或多個逗號?如果有辦法只告訴它由前6個逗號分割,我可以想象這會起作用,但我不確定如何做到這一點。

感謝您的幫助提前。

回答

2
var1, var2, var3, var4, var5, var6, var7 = stringone.split(',', 6) 
1

你正在使用什麼叫做argument unpacking

我會建議建立一個功能,通過使用從Python文檔在上面的鏈接描述的語法允許的var秒的任意號碼:

def var_consumer(*vars): 
    """Do the same thing to all vars passed in.""" 
    pass 

>>> consumed = var_consumer(stringone.split(',')) 

這樣,你不必猜多少許多變數將被傳遞給var_consumer。你可以處理任何數量的數據,甚至爲零。