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

2024-05-19 02:13:51 发布

您现在位置: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列时提醒我。 我被这个问题困住了,解决不了。你知道吗

谢谢你的帮助


Tags: 文件格式警报black文本文件tombrim本例
2条回答

要查找行中的列数,可以按以下方式使用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")

这里,函数split分割字符串。你知道吗

如果你的文件.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 ....

相关问题 更多 >

    热门问题