我有一個字符串。python中的字符串列表轉換
s = '1989, 1990'
我要轉換的是使用Python &列出我想作爲輸出,
s = ['1989', '1990']
是否有同任何一個最快的方式班輪?
我有一個字符串。python中的字符串列表轉換
s = '1989, 1990'
我要轉換的是使用Python &列出我想作爲輸出,
s = ['1989', '1990']
是否有同任何一個最快的方式班輪?
使用split method:
>>> '1989, 1990'.split(', ')
['1989', '1990']
但你可能想:使用replace
分裂由
刪除空格 ''
這樣:
>>> '1989, 1990,1991'.replace(' ', '').split(',')
['1989', '1990', '1991']
這將更好地工作,如果你的字符串是來自用戶的輸入,因爲用戶可能會忘記在逗號後打空格。
調用split
功能:
myList = s.split(', ')
print s.replace(' ','').split(',')
首先刪除空格,然後用逗號分割。
這是一個更好的答案 - 更換所有空間可能會影響數據,剝離拆分項目是一個更好的主意。 – 2012-03-28 10:45:20
或者你可以使用正則表達式:
>>> import re
>>> re.split(r"\s*,\s*", "1999,2000, 1999 ,1998 , 2001")
['1999', '2000', '1999', '1998', '2001']
表達\s*,\s*
匹配零個或多個空白字符,一個逗號和零個或多個空白字符一次。
我創建了這個泛型方法:
def convertToList(v):
'''
@return: input is converted to a list if needed
'''
if type(v) is list:
return v
elif v == None:
return []
else:
return [v]
或許是爲了你的項目非常有用。
converToList(s)
可能的重複[如何將字符串拆分爲Python列表?](http://stackoverflow.com/questions/88613/how-do-i-split-a-string-into-a -list-python) – bernie 2012-03-28 15:05:49