# Auther: Aaron Fan

'''
打开文件的模式有三种:
r,只读模式(默认)。
w,只写模式。【不可读;不存在则创建;存在则删除内容;因为会清空原有文件的内容,一定要慎用】
a,追加模式。【可读; 不存在则创建;存在则只追加内容;】
注意最后要记得关闭文件:f.close()
python只能将字符串写入到文本文件。要将数值数据存储到文本本件中,必须先试用函数str()将其转换为字符串格式。
#r模式(只读模式)
f = open('yesterday',encoding='utf-8')
data = f.read()
f.close()
print(data)
#只读文件的前5行:
f = open('yesterday','r',encoding='utf-8')
for i in range(5):
print(f.readline())
#以列表的方式读取这个文件
f = open('yesterday','r',encoding='utf-8')
for line in f.readlines():
print(line)
#对文件的第3行,做一个特殊的打印(这种方式比较低效,因为它会先把文件全部读取到内存中,文件较大时会很影响性能)
f = open('yesterday','r',encoding='utf-8')
for index,line in enumerate(f.readlines()):
if index == 2:
print('-----测试线----',line)
continue
print(line)
#比较高效的,逐行读取文件内容,因为它是一行一行的去读取文件,不会先把文件一次性全部读取到内存中
f = open('yesterday','r',encoding='utf-8')
for line in f:
print(line)
#比较高效的,对文件的3三行进行过特殊打印
f = open('yesterday','r',encoding='utf-8')
count = 0
for line in f:
if count == 2:
print('------测试线----:',line)
count += 1
print(line) #w模式(如果没有就创建文件,如果有就清空文件,一定要慎用)
f = open('yesterday','w',encoding='utf-8')
f.write("这就是一行测试\n")
f.write("测试2\n")
f.write("测试3") #a模式(追加模式,如果没有就创建文件,如果有就把内容追加进去)
f = open('yesterday','a',encoding='utf-8')
f.write("test1\n") #文件光标的操作
f = open('yesterday','r',encoding='utf-8')
#获得文件的光标
print(f.tell())
print(f.readline())
print(f.tell())
#回到最开始的位置(也可以指定一个位置,前提是你得知道你去往的字符具体在哪个位置才行)
f.seek(0) #显示文件的编码
print(f.encoding)
#显示文件句柄的编号(我并不确定这个说法是否正确,用到时请仔细去查一下)
print(f.fileno())
#测试是否是一个终端设备文件
print(f.isatty())
#把缓存的内容刷新到硬盘(进度条那个脚本里有写一个示例)
f.flush()
#指定文件从哪里开始截断,如果没有参数,默认从0开始等于清空了这个文件
#f.truncate() #r+ 模式(读,追加模式)
f = open('yesterday','r+',encoding='utf-8')
data = f.read()
print(data)
f.write("test...\n") #还有 w+写读模式, a+追加读模式,这一般不用,真用到了再去了解下吧
#rb 模式,以二进制的方式读取这个文件
#wb 模式,二进制写
''' '''
#with语句(很实用,记得要经常用哟~,在《Python编程从入门到实战》那本书里的文件与异常那一章有详细用法)
#为了避免打开文件后忘记关闭,可以通过管理上下文,即:
with open('log','r') as f: ...
#如此方式,当with代码块执行完毕时,内部会自动关闭并释放文件资源。
#在Python 2.7 后,with又支持同时对多个文件的上下文进行管理,即:
with open('log1') as obj1, open('log2') as obj2:
pass
'''

python3-file文件操作的更多相关文章

  1. python3.7 文件操作

    #!/usr/bin/env python __author__ = "lrtao2010" #python3.7 文件操作 # r 只读,默认打开方式,当文件不存在时会报错 # ...

  2. [转]python file文件操作--内置对象open

    python file文件操作--内置对象open   说明: 1. 函数功能打开一个文件,返回一个文件读写对象,然后可以对文件进行相应读写操作. 2. file参数表示的需要打开文件的相对路径(当前 ...

  3. File 文件操作类 大全

    File  文件操作类  大全 许多人都会对文件操作感到很难  我也是  但是一个好的项目中必定会涉及到文件操作的 文件的复制 粘贴  等等等 公司大佬写了 一个文件操作的工具类 感觉还是棒棒的啦   ...

  4. Android的file文件操作详解

    Android的file文件操作详解 android的文件操作要有权限: 判断SD卡是否插入 Environment.getExternalStorageState().equals( android ...

  5. python file文件操作--内置对象open

    说明: 1. 函数功能打开一个文件,返回一个文件读写对象,然后可以对文件进行相应读写操作. 2. file参数表示的需要打开文件的相对路径(当前工作目录)或者一个绝对路径,当传入路径不存在此文件会报错 ...

  6. 廖雪峰js教程笔记14 file文件操作

    在HTML表单中,可以上传文件的唯一控件就是<input type="file">. 注意:当一个表单包含<input type="file" ...

  7. 30天C#基础巩固------集合,File(文件操作 ),Encoding处理字符集

    一:泛型    关于泛型我自己也不是很好的理解,但是具体的运用还是可以的,可以这样的理解,我们定义一个数组,但是不知道将来它是保存什么类型的值,很是矛盾,这个时候泛型就出现了,它可以解决这个场景,li ...

  8. 【python3之文件操作】

    一.文件操作 1.文件处理的流程 1)打开文件,得到文件句柄并赋值给一个变量 2)通过句柄对文件进行操作 3)关闭文件 例如: f = open('chenli.txt') #打开文件 first_l ...

  9. Java File文件操作 创建文件\目录,删除文件\目录

    Java手册 java.io 类 File java.lang.Object java.io.File 所有已实现的接口: Serializable, Comparable<File> p ...

  10. java File文件操作共用方法整理

    package org.jelly.util; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io ...

随机推荐

  1. hdu-2544-最短路(SPFA模板)

    题目链接 题意很清晰,入门级题目,适合各种模板,可用dijkstra, floyd, Bellman-ford, spfa Dijkstra链接 Floyd链接 Bellman-Ford链接 SPFA ...

  2. L121

    今天上午签字仪式的布置与该场合的严肃性非常协调.The setting for this morning's signing ceremony matched the solemnity of the ...

  3. Django 框架概况

    Django 里更关注的是模型(Model).模板(Template)和视图(Views),称为 MTV模式: M 代表模型(Model),即数据存取层. 该层处理与数据相关的所有事务:如何存取.如何 ...

  4. set/multiset和map/multimap用法小结

    二叉搜索树是ACM中经常需要用到的数据结构,熟练掌握map和set的用法很关键,现对其做一个简单的总结. 主要的功能有:插入元素,查找元素,删除,遍历/反向遍历. 插入,删除和查找操作的时间都和树的高 ...

  5. python lambda 用途

    可以让一个带参数函数,传递并以无参调用 def test(a): print a a=test # #a() a=897987 fun=lambda : test(a) fun()

  6. [ Laravel 5.5 文档 ] 数据库操作 —— 在 Laravel 中轻松实现分页功能

     简介 在其他框架中,分页是件非常痛苦的事,Laravel 让这件事变得简单易于上手.Laravel 的分页器与查询构建器和 Eloquent ORM 集成在一起,并开箱提供方便的.易于使用的.基于 ...

  7. 前端用户输入校验--基于JQ

    <!DOCTYPE html> <html> <head> <title>用户输入校验</title> </head> < ...

  8. YUV转换成RGB算法

    YUV转换成RGB void yuvtorgb ( double *rgb,unsigned char *yuv) { int i; rgb[] = ] + + ] - ); // r rgb[] = ...

  9. 使用PHP的GD2裁剪 + 缩放图片

    /** * 裁剪 + 缩放图片 * @param array $params 包含x,y,width,height,path * @return string */ public function t ...

  10. Gwt第三方组件、框架介绍

    介绍一下我接触过的Gwt第三方组件.框架及项目 1. Mygwt 曾经的大名鼎鼎的gwt第三方框架,在某些gwt框架的排名中排名第一.这个框架完全用gwt的方式实现了ext-js的功能,不依赖于ext ...