添加行号
使用可自定义的分隔符、起始编号、步长和零填充为任何文本添加行号。
关于此工具
代码、文档和技术规范中经常需要引用特定的行,此时行号变得至关重要。手动添加行号既耗时又容易出错,尤其是对于长文档。该工具能自动为每行添加连续序号,使讨论特定部分变得更加简便,同时在不同环境中保持格式一致。
只需将文本粘贴到编辑器中,自定义分隔符(冒号、句号或括号),设置起始编号和递增步长即可。工具会立即应用行号,同时保留原始文本结构。你还可以启用零填充来视觉上对齐数字——这对于100行以上的文件特别有用,能避免个位数行号显示不齐。
开发人员在粘贴错误日志进行调试时使用此工具,技术文档编写者在准备有编号说明时使用,教育工作者在创建带注释的代码示例时也会用到。从任意数字开始、按自定义间隔递增的灵活性使其特别适合为章节重新编号,或在现有行号之外创建辅助编号方案。
常见问题
代码实现
def add_line_numbers(text, start=1, step=1, sep=". ", pad=False, skip_empty=False):
lines = text.split("\n")
total = sum(1 for l in lines if (not skip_empty or l.strip())) if skip_empty else len(lines)
max_num = start + (total - 1) * step
width = len(str(max_num))
num = start
result = []
for line in lines:
if skip_empty and not line.strip():
result.append(line)
continue
num_str = str(num).zfill(width) if pad else str(num)
result.append(f"{num_str}{sep}{line}")
num += step
return "\n".join(result)
text = """Hello world
This is line two
Fourth line here"""
print(add_line_numbers(text, start=1, step=1, sep=". ", pad=True))Comments & Feedback
Comments are powered by Giscus. Sign in with GitHub to leave a comment.