如何用Python统计文本文件每行开头的制表符数量?
Python 获取文本每行开头的制表符数量
完全可以用Python实现这个需求,下面是两种实用的方法:
方法一:逐个字符统计
遍历每行的开头字符,直到遇到非制表符为止,统计过程中遇到的制表符数量:
with open('your_file.txt', 'r', encoding='utf-8') as f: # 逐行读取文件,enumerate从1开始计数行号 for line_num, line in enumerate(f, 1): tab_count = 0 for char in line: if char == '\t': tab_count += 1 else: # 遇到非制表符就停止统计 break print(f"第{line_num}行开头制表符数量: {tab_count}")
方法二:利用字符串长度差计算
通过lstrip('\t')去掉行开头的所有制表符,用原行长度减去处理后的行长度,差值就是开头制表符的数量:
with open('your_file.txt', 'r', encoding='utf-8') as f: for line_num, line in enumerate(f, 1): # 仅去掉开头的制表符,保留其他位置的制表符 stripped_line = line.lstrip('\t') tab_count = len(line) - len(stripped_line) print(f"第{line_num}行开头制表符数量: {tab_count}")
两种方法都能准确统计每行开头的制表符数量,方法二更简洁高效,方法一适合需要清晰展示统计过程的场景。
内容的提问来源于stack exchange,提问作者Tim
相关产品推荐
相关产品推荐

