在Python中给文件添加行号,你可以使用以下方法:
1. 读取文件的所有行。
2. 计算最长行的长度。
3. 遍历每一行,在行首添加行号。
4. 将修改后的行写回文件。
下面是一个简单的示例代码,演示了如何给文件添加行号:
```python
打开文件进行读取
with open('demo.py', 'r') as file:
lines = file.readlines()
计算最长行的长度
max_length = max(len(line) for line in lines)
遍历每一行,添加行号
for index, line in enumerate(lines, start=1):
删除行尾的空白字符
line = line.rstrip()
在行首添加行号
line = f"{index:<{max_length+5}} {line}"
将修改后的行写回文件
with open('demo_new.py', 'w') as file:
file.writelines(lines)
这段代码会读取名为`demo.py`的文件,并在每一行的开头添加行号,然后保存到名为`demo_new.py`的新文件中。行号的对齐是通过在行首添加空格来实现的,确保行号占据固定宽度。
如果你需要将行号添加到已经存在的文本文件中,并且文本文件的前5列包含4位行号,后跟一个空格,你可以使用以下代码:
```python
打开文件进行读取
with open('test.txt', 'r') as file:
lines = file.readlines()
遍历每一行,添加行号
for index, line in enumerate(lines, start=1):
在行首添加行号
line = f"{index:<4} {line}"
将修改后的行写回文件
with open('test_numbered.txt', 'w') as file:
file.writelines(lines)
这段代码会读取名为`test.txt`的文件,并在每一行的开头添加行号,然后保存到名为`test_numbered.txt`的新文件中。行号占据固定宽度为4个字符。
请注意,这些代码示例适用于较小的文件。如果文件非常大,你可能需要考虑内存效率,并可能需要使用生成器表达式或其他流式处理方法来处理文件。