在Python中基于分隔符验证.csv文件

2024-04-26 00:35:01 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图编写一个函数来检查.csv文件中的所有分隔符是否都是“;”。我试图使用csv.Sniffer()

import csv
def check_data_validity(file):
    sniffer=csv.Sniffer()
    dialect = sniffer.sniff(file)
    if dialect.delimiter != ';':
        return False

不管文件是什么,我总是得到“假”。我想可以通过阅读每一行并检查分隔符是什么来实现的,但是我发现对于巨大的文件来说,这是相当令人生畏的。在

原始格式的文件示例如下:

^{pr2}$

Tags: 文件csv函数importdataifdefcheck
1条回答
网友
1楼 · 发布于 2024-04-26 00:35:01

您可以使用嗅探器检查是否抛出错误。在

import csv
def check_data_validity(file):
    with open(file, newline = "") as csvfile:
        try:
            dialect = csv.Sniffer().sniff(csvfile.read(1024), delimiters = ";")
            print("Delimiter is ;")
        except:
            print("Wrong Delimiter")

相关问题 更多 >