使用python,如何检查文本文件的每一行是否具有相同的格式?

使用python,如何检查文本文件的每一行是否具有相同的格式?,python,file,Python,File,让我们以这个文件为例: Black_Panther;500;130;120;110 Tomb_Raider;75;112;102;92 Pacific_Rim;400;126;116;106 如果文件如下所示,如何在python中进行控制: Black_Panther;500;130;120;110 Tomb_Raider;75;112;102;92 Pacific_Rim;400;126;116; (最后一行中缺少106)。 当其中一行的格式与其他行的格式不同时,如何使python

让我们以这个文件为例:

Black_Panther;500;130;120;110

Tomb_Raider;75;112;102;92

Pacific_Rim;400;126;116;106
如果文件如下所示,如何在python中进行控制:

Black_Panther;500;130;120;110

Tomb_Raider;75;112;102;92

Pacific_Rim;400;126;116;
(最后一行中缺少106)。 当其中一行的格式与其他行的格式不同时,如何使python提醒我?在本例中,当从文件中删除106时。 基本上,我希望Python在文本文件中的一行没有其他行的5列时提醒我。 我一直受这个问题困扰,无法解决它


thanx如需任何帮助,请按以下方式查找您可以使用的
os
软件包中的行数:

import os

line = "Pacific_Rim;400;126;116;106"
elements_in_line = line.strip(";").split (";")
number_of_columns = len(elements_in_line)

if number_of_columns != 5:
    print ("It's a warning")

在这里,函数拆分字符串。

如果file.txt如下所示:

Black_Panther;500;130;120;110
Tomb_Raider;75;112;102;92
Pacific_Rim;400;126;116;
with open("file.txt", 'r') as f:
   for i in f:
       if len(i.strip(';').split(';')) != 5:
          print("exception in", i)
          Do what you want to ....
您可以这样做:

Black_Panther;500;130;120;110
Tomb_Raider;75;112;102;92
Pacific_Rim;400;126;116;
with open("file.txt", 'r') as f:
   for i in f:
       if len(i.strip(';').split(';')) != 5:
          print("exception in", i)
          Do what you want to ....

你的文件类型是什么?这是文件的每一行?另一种方法是使用正则表达式,如[a-zA-Z!]+(;[0-9]+){4},是吗?它对我有用。但是是的!如果愿意,请使用
=。无论如何,我已经更正了
不是
=按照你的建议。你确定它在
line=“Pacific_-Rim;400;126;116;”
@VikasDamodar时起作用吗,你是对的,我真的犯了一个愚蠢的错误,没有使用
在行尾。“我会尽快改正的。”维卡斯达摩,我已经改正了。非常感谢您的建议。您可以为此
更正您的代码;400;126;116;106;条件。它没有提到这个问题,但可能会面临同样的问题。@Akhilesh对此表示感谢:)