【问题标题】:Python- Check in the CSV file the Header value and data value is equalPython-在 CSV 文件中检查 Header 值和数据值是否相等
【发布时间】:2013-01-06 09:53:30
【问题描述】:

我只是对 CSV 文件有一些疑问。

-所有值都等于Header。

例如:-

abc.csv 文件包含

RollNO,Name,Age
1,Abc,15
2,Def,18

有时文件是这样来的

RollNO,Name,Age
1,Abc,15
2,Def,18,blabla,21

在这种情况下,该值大于标头。那么我该如何检查这个东西。

-检查空白页眉

aaa.csv

RollNO,Name,Age, ,Address

我必须检查标题中不应该有空格。

-检查标题中没有特殊字符。

bbb.csv

Rol$lNO,Name,Age,Address

我还必须检查一下标题不应包含特殊字符。

提前致谢!!!

【问题讨论】:

  • 正确格式化您的文字数据
  • 我试过了但是没用..

标签: python csv python-2.7


【解决方案1】:
import re    
csvfile = open('abc.csv','r')
csv = [line.split(',') for line in csvfile.readlines()]

问题#1:检查数据行是否比标题行长:

for i in csv[1:]:
    if len(i) > len(csv[0]):
        print("found a data row that is longer then the header row.")

问题#2:检查是否有空标题项:

blank = re.compile(r'\s*')
for i in csv[0]:
    if blank.match(i).end() == len(i):
        print("found an empty header item")

问题#3:检查表头是否有特殊字符:

charset = re.compile(r'\w*')
for i in csv[0]:
    if charset.match(i).end() != len(i):
        print("found a header item that contains special characters.")

【讨论】:

    猜你喜欢
    • 2021-07-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-01-12
    • 2023-03-30
    • 2018-09-05
    • 2013-01-27
    相关资源
    最近更新 更多