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,更加简化:

 

posted @   头痛不头痛  阅读(335)  评论(0编辑  收藏  举报
编辑推荐:
· 基于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
点击右上角即可分享
微信分享提示
主题色彩