我正在使用python來解析傳入的逗號分隔字符串。之後我想對數據做一些計算。 字符串的長度是:800個字符,包含120個以逗號分隔的字段。 有120萬個字符串需要處理。Python快速字符串解析,操作
for v in item.values():
l.extend(get_fields(v.split(',')))
#process l
get_fields使用operator.itemgetter()以提取約20字段總分120
這整個操作大約需要4-5分鐘不計時間在數據帶。 在程序的後面部分,我將這些行插入sqlite內存表以供進一步使用。 但是,僅僅解析和獲取列表的整體4-5分鐘時間並不適合我的項目。
我在6-8線程左右運行這個處理。
切換到C/C++可能有幫助嗎?
你正在調用一個需要遍歷800個字符的函數,並且你正在做這個函數超過一百萬次。即使是電腦,也需要處理很多。 – tlayton 2010-07-02 19:32:26
http://docs.python.org/library/csv.html – kennytm 2010-07-02 19:34:22
如果你打算重新發明輪子,你應該看看這篇文章:http://stackoverflow.com/questions/3055477/how-slow- is-pythons-string-concatenation-vs-str-join你也應該看看generator。 – 2010-07-02 19:40:49