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

Python学习笔记9—文件的更多相关文章
- Python学习笔记之文件处理
1.打开和关闭 要打开文件可以使用函数 open(),它位于自动导入模块 io 中.函数将文件名作为唯一不可缺少的函数,并返回一个文件对象.它还有一个名叫 mode 的参数,用于指定文件模式,其可取值 ...
- [Python学习笔记]组织文件
shutil 模块 shutil 模块可以让我们很方便的在Python程序中复制.移动.改名和删除文件. 复制文件和文件夹 使用shutil.copy()来复制文件,该函数含两个参数,均为字符串格式的 ...
- Python学习笔记015——文件file的常规操作之一(文本文件)
1 什么是文件 文件是用于数据存储的单位 文件通常用来长期保存数据 读写文件是最常见的I/O操作.Python内置了读写文件的函数,用法和C是兼容的. 读写文件的功能都是由操作系统提供的,一般而言,操 ...
- python学习笔记(11):文件的访问与函数式编程
一.文本文件读写的三种方法 1.直接读入 file1 = open('E:/hello/hello.txt') file2 = open('output.txt','w') #w是可写的文件 whil ...
- python学习笔记(7)文件的访问与函数式编程
一.文件读写的3中方法 1.直接读入 fiel1=open('test.txt') file2=open('output.txt') while True: line=file1.readLine() ...
- python学习笔记(六)---文件操作与异常处理机制
文件读取 读取整个文件 要读取文件,需要一个包含几行文本的文件.下面首先来创建一个文件,它包含精确到小数点后30位的圆周率值,且在小数点后每10位处都换行: pi_digits.txt 3.14159 ...
- 转载-Python学习笔记之文件读写
Python 文件读写 Python内置了读写文件的函数,用法和C是兼容的.本节介绍内容大致有:文件的打开/关闭.文件对象.文件的读写等. 本章节仅示例介绍 TXT 类型文档的读写,也就是最基础的文件 ...
- python学习笔记之文件操作(三)
这篇博客小波主要介绍一下python对文件的操作 对文件的操作主要分为三步: 1.打开文件获取文件的句柄,句柄也是文件描述符 2.通过文件句柄操作文件 3.关闭文件. 现有以下文件,是小波随写的周杰伦 ...
- python学习笔记4(文件操作)
文件操作: 1.f=open(”caidan”,”w”,encoding=”utf8”) 直接打开一个文件,如果文件不存在则创建文件 f.close() 2.with open (”caid ...
- 转载-python学习笔记之文件I/O
Python 文件I/O 本章只讲述所有基本的的I/O函数,更多函数请参考Python标准文档. 打印到屏幕 最简单的输出方法是用print语句,你可以给它传递零个或多个用逗号隔开的表达式.此函数把你 ...
随机推荐
- mysql使用索引扫描来做排序
mysql有两种方式可以生成有序的结果,通过排序操作或者按照索引顺序扫描,如果explain的type列的值为index,则说明mysql使用了索引扫描来做排序(不要和extra列的Using ind ...
- YTU 3020: 对称矩阵(数组)
3020: 对称矩阵(数组) 时间限制: 1 Sec 内存限制: 128 MB 提交: 3 解决: 2 题目描述 已知A和B为两个n*n阶的对称矩阵,输入时,对称矩阵只输入下三角行元素,存入一维数 ...
- springMVC配置freemarker
这里呢,我首先来说明一下写该篇的目的. 我最近要用到freemarker因此研究了一下这个东西. 先来说说如何配置吧. 1.jar包.地址见下链接. http://pan.baidu.com/s/1j ...
- C/C++ 调用qsort/sort 对字符数组排序的cmp函数写法
这个问题屡次碰到解决之后再次遇到又忘记怎么弄了,这次打算彻底搞清楚. ·C 首先对所谓字符数组的排序应该是对(char)*a[]数组而非(char)a[][]进行的排序,后者是无法直接调用qsort实 ...
- ural 1115,搜索
题目链接:http://acm.timus.ru/problem.aspx?space=1&num=1115 题意:n个军舰,m个海岸线,各个长度给出,求n个军舰怎么组成这些海岸线. 思路很简 ...
- 解决json_encode中文UNICODE转码问题
用PHP的json_encode来处理中文的时候, 中文都会被编码, 变成不可读的, 类似”\u***”的格式,如果想汉字不进行转码,这里提供三种方法 .升级PHP,在PHP5., 这个问题终于得以解 ...
- samba共享服务器搭建 亲手实验
一.简介 Samba是一个能让Linux系统应用Microsoft网络通讯协议的软件,而SMB是Server Message Block的缩写,即为服务器消息块 ,SMB主要是作为Microsoft的 ...
- centos系统下设置固定IP+dns
笔者用的linux系统是centos版本的,在次之前linux是空白,今天我在物理机用XSHELL连接虚拟机中的centos时候出现连接失败的情况,我的第一反应就是IP是不是变了?打开虚拟机之后在终端 ...
- 修改客户端Webbrowser对应IE版本步骤
制作注册表文件的过程 1,” HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\InternetExplorer\MAIN\ FeatureControl\FEATURE_B ...
- 数据库SQL语句练习题5--9
5. 查询Score表中成绩为85,86或88的记录. ,,) 6. 查询Student表中“95031”班或性别为“女”的同学记录. ' or ssex = '女' 7. 以Class降序查询Stu ...