Python学习笔记9—文件
在Python中,要对一个文件进行操作,只需用内置的open函数打开文件即可。
Signature: open(file, mode='r', buffering=-1, encoding=None, errors=None, newline=None,closefd=True, opener=None)
Docstring:
Open file and return a stream. Raise IOError upon failure.
Python内置的open函数:#
f = open('1.txt','w',encoding='GBK')
关闭文件:#
打开的文件要及时关闭,在Python中也可以使用finally语句来保证,但是却不够Pythonic。
使用finally的方法:
使用上下文管理器,会自动调用close()方法
常见的文件读取的函数:
- read read可以指定参数size,读取指定字节数
- readline 一次读取一行
- readlines 将文件读取到一个列表中,列表中的每一个成员代表一行
- seek 改变文件的读取偏移量
- tell 文件读取的偏移量
read:
readline:
readlines:
seek
此时指针所在的位置,还可以用tell() 来显示,如
>>> f.tell()
17
读取大文件的几种方法:
while 循环和readlin() 来完成这个任务。
#/usr/bin/env python #coding=utf-8 f = open("/python/you.md") while True: line = f.readline() if not line: #到 EOF,返回空字符串,则终止循环 break print line, #注意后面的逗号,去掉 print 语句后面的 '\n',保留原文件中的换行 f.close()
还有一个方法:fileinput 模块
>>> import fileinput >>> for line in fileinput.input("you.md"): ... print line, ... You Raise Me Up When I am down and, oh my soul, so weary; Then troubles come and my heart burdened be;
但是使用迭代的方法是最好的:因为 file 是可迭代的数据类型
文件写的函数#
- write 写字符串到文件中,并返回字符数
- writelines 写一个字符串列表到文件中
- print 比write和writelines更加灵活
print:
经典案列:#
将所有单词首字母变为大写:
使用write:
使用print,更加简化:
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
2015-09-06 expdp\impdp及exp\imp