在 Python 中,readline 通常指的是从文件或标准输入中读取一行数据,Python 提供了多种方法来实现这一功能,具体取决于你的使用场景,以下是几种常见的用法:
从文件中读取一行
如果你有一个文件对象,可以使用 readline() 方法来读取文件中的一行。
# 打开文件并读取第一行
with open('example.txt', 'r') as file:
line = file.readline()
print(line)
readline()会读取文件中的当前行,并将文件指针移动到下一行的开头。- 如果文件已经结束,
readline()返回空字符串 。
逐行读取整个文件
如果你需要逐行读取整个文件,可以使用
for 循环结合 readline() 或迭代文件对象。
方法 1:使用 for 循环
with open('example.txt', 'r') as file:
for line in file:
print(line.strip()) # strip() 用于去除换行符
方法 2:使用 readlines()
with open('example.txt', 'r') as file:
lines = file.readlines()
for line in lines:
print(line.strip())
readlines()会将文件的所有行读取到一个列表中,适合小文件。- 对于大文件,建议使用
for循环逐行处理,以节省内存。
从标准输入读取一行
如果你需要从控制台(标准输入)读取一行数据,可以使用
input() 函数。
user_input = input("请输入一行内容: ")
print("你输入的内容是:", user_input)
input()会等待用户输入,直到用户按下回车键,以字符串形式返回。
使用 sys.stdin 读取标准输入
如果你需要更灵活地处理标准输入,可以使用 sys.stdin。
import sys
for line in sys.stdin:
print("读取的行:", line.strip())
sys.stdin是一个文件对象,可以直接迭代读取每一行。- 这种方式适合处理管道输入或重定向输入。
自定义 readline 行为
如果你需要自定义读取行为(例如跳过某些行、限制读取长度等),可以结合
readline() 和其他方法实现。
with open('example.txt', 'r') as file:
while True:
line = file.readline()
if not line: # 文件结束
break
if line.startswith('#'): # 跳过注释行
continue
print(line.strip())
注意事项
- 编码问题:如果文件包含非 ASCII 字符(如中文),建议指定编码格式,
open('example.txt', 'r', encoding='utf-8')。 - 性能优化:对于大文件,避免使用
readlines(),因为它会将所有内容加载到内存中,推荐使用for循环逐行处理。
首发原创文章,作者:世雄 - 原生数据库架构专家,如若转载,请注明出处:https://idctop.com/article/485650.html



