說我有一個字符串,其中包含數據庫或電子表格中逗號分隔格式的數據。從Python中的逗號分隔字符串中只提取某些字段的最快方法
例如:
data = "hello,how,are,you,232.3354,good morning"
假設有可能在這些 「記錄」 200場。
我有興趣查看此記錄的某些字段。 Python中最快的方法是什麼?
最簡單的方法是這樣的:
fields = data.split(",")
result = [fields[4], fields[12], fields[123]]
有一個更快的方法來做到這一點,利用的事實是:
- 你只需要分配一個列表3個元素和3個字符串對象的結果。
- 您可以停止掃描數據串,一旦你達到場123
我試圖用重複調用找到跳過通過逗號來寫一些代碼,但如果最後一個字段是太遠了這串變得比基本的拆分解決方案慢。
我正在處理數百萬條記錄,所以任何加速都會受到歡迎。
用Python解決方案擊敗本地'str.split()'將會很困難。 –
我不知道它是否更快,但你可以避免用'data.split(「,」,124)'分割整個字符串。 – chepner
你確定它是你的應用程序的瓶頸嗎?你需要多快才能將應用程序中其他位置的瓶頸轉移? – jfs