簡體   English   中英

Python CSV 不同的分隔符

[英]Python CSV different delimiter

我正在嘗試讀取以`作為分隔符的文件。 我已經為不同的分隔符嘗試了其他一些解決方案,但似乎都沒有。

with open("data.csv", "r") as data:
    for line in data:
        for line.split('`') as element:
            print(element)

示例輸入文件:

sarah`120`18kg`22Rep
thomas`160`8kg`11Rep

預期的結果應該是:

sarah
120
18kg
22Rep
thomas
160
8kg
11Rep

但這就是我得到的:




謝謝你的時間!

我建議使用標准庫中的 DictReader class ,如下所示:

import csv

def read_csv(filepath: str) -> list:
    """Read csv file from given path, return contents as list of dictionaries"""
    with open(filepath, encoding='utf-8') as f:
        r = csv.DictReader(f, delimiter='`')
        return list(r)

print(read_csv("data.csv"))

也許嘗試一個名為 pandas 的 python csv 庫。

我找到了一個教程,向您展示如何使用自定義分隔符。

pandas.read_csv(filepath_or_buffer, sep=', ', delimiter=None, header='infer', names=None, index_col=None, ....)

我認為這條線對你最有用。

我沒有機會對此進行測試,但是您在所有元素上的循環看起來都不正確。 嘗試:

with open("data.csv", "r") as data:
    for line in data:
        for element in line.split('`'):
            print(element)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM