文件操作

1,文件路径:d:\xxxx.txt
    绝对路径:从根目录到最后
    相对路径:当前目录下的文件
2,编码方式:utf-8
3,操作方式:只读,只写,追加,读写,写读......
(1)只读--r
f =open('路径',mode='r',encoding='编码方式')
content=f.read()
print(content)
f.close()

只读-r

以什么编码方式储存的文件,就要以什么编码方式打开。
只读:r----->以str方式读取
只读;  rb------>以bytes类型打开,用于非文字文件的打开.
(2)只写-->没有此文件就会创建文件。有个文件则会先将源文件的内容全部清除,再写。
只写:w
f =open('路径',mode='w',encoding='编码方式')
content=f.write('内容')
f.close() 
 
wb:
f =open('路径',mode='wb')
content=f.write('内容'.encode('utf-8'))
f.close()
 
(3)追加------>在文件后追加内容:a
f =open('路径',mode='a',encoding ='编码方式')
f.write('内容')
f.close()
 
ab
f =open('路径',mode='a')
f.write('内容',encode('utf-8'))
f.close()
(4)r+(先读后写)

读写:
f = open('log',mode ='r+',encoding='utf-8')
content =f
print(f.read())
f.write('内容') 
f.close()
(5)写读:(先写后读)
f = open('log',mode ='r+',encoding='utf-8')
content =f
f.write('内容') 
print(f.read())
f.close()
先写后读。先写,光标从开头往后走,覆盖后边的内容。
(6)r+模式的bytes类型:r+b
f = open('log',mode ='r+b')
print(f.read())
f.write('内容'.encode('编码方式'))
f.close()
(7)w+
f =open('路径',mode='w+',encoding ='utf-8')
f.write('内容')
print(f.read())
f.close()
4、seek:调光标
f.seek(位置)-----》f.seek(0)
'''
read是按字符来读。
seek是按字节去定光标的位置
'''
f =open('log',mode = 'r+',encodeing='utf-8')
f.seek(3)
content =f.read()
print(content)
f.close()
5、断点续传----》定位光标的位置
  f.tell()定位光标的位置
    f =open('log',mode = 'a+',encoding ='utf-8')
    f.write('+7')
    count =f.tell()
    f.seek(count -9)#在utf-8中一个中文占三个字节
    print(f.read())
    f.close()
#无论是在实际开发过程中还是在平时的下载当中都会遇到网络中断的情况,因此断点续传就尤为重要,找到最后的下载位置开始下载,比重新开始再下一遍要快的多。
6、f.readable()
判断是不是可读-》返回true或false
line =f.readline()
print(line)
f.close()
 
7、redline
一行一行读
line = f.readlines()
print(line)
f.close()
 
每一行当成列表中的一个元素,添加到列表中(lines是列表)
truncate
截取一段去读
8、用with打开文件
with open('路径',mode='r',encoding='utf-8') as obj:
    print(obj.read())
打开多个文件

编码二:
bytes---》str:
1,decode(解码)
s1 = b.decode('utf-8')
2,如果字符串里都是字母
解码的时候写gbk并不会报错
s =abf
b=s.encode('utf-8') print(b) s1 =b.decode('gbk') print(s1)

编码与解码

Python学习日记:day8-------文件操作的更多相关文章

  1. Python学习日记(七) 文件操作

    文件操作: 首先要有一个文件作为对象,例‘文件名’.txt 1.文件路径:例 d:\文件名.txt <1>:绝对路径:从根目录往后的路径 <2>:相对路径:当前目录下的路径有什 ...

  2. python学习日记(文件操作练习题)

    登录注册(三次机会) name = input('请注册姓名:') password = input('请注册密码:') with open('log',mode='w',encoding='utf- ...

  3. Python学习日记之文件读取操作

    Python内置了文件读写的函数open,read 用法示例: open('/home/root/files.txt ') 在打开文件后,操作完成后可以使用close()关闭文件,但比较好的文件读写方 ...

  4. Python学习:7.文件操作

    文件操作 我们曾将听过一个问题,将大象放入冰箱分为三步:1.打开冰箱门,2.将大象放进去,3.关上冰箱门.今天我们要讲的Python文件操作的步骤就像将大象放入冰箱的步骤一样. 使用Python操作文 ...

  5. 【Python学习之六】文件操作

    环境 虚拟机:VMware 10 Linux版本:CentOS-6.5-x86_64 客户端:Xshell4 FTP:Xftp4 python3.6 一.文件的打开与关闭 使用open函数,可以打开一 ...

  6. python学习笔记之文件操作(三)

    这篇博客小波主要介绍一下python对文件的操作 对文件的操作主要分为三步: 1.打开文件获取文件的句柄,句柄也是文件描述符 2.通过文件句柄操作文件 3.关闭文件. 现有以下文件,是小波随写的周杰伦 ...

  7. python学习笔记4(文件操作)

    文件操作: 1.f=open(”caidan”,”w”,encoding=”utf8”)      直接打开一个文件,如果文件不存在则创建文件 f.close() 2.with open (”caid ...

  8. python学习笔记三 文件操作(基础篇)

    文件操作 打开文件 open(name[,mode[,buffering]])   open函数使用一个文件名作为强制参数,然后返回一个文件对象.[python 3.5 把file()删除掉]   w ...

  9. python学习第十八天 --文件操作

    这一章节主要讲解文件操作及其文件读取,缓存,文件指针. 文件操作 (1)文件打开:open(filepath,filemode) filepath:要打开文件的路径 filemode:文件打开的方式 ...

  10. python学习笔记(三):文件操作和集合

    对文件的操作分三步: 1.打开文件获取文件的句柄,句柄就理解为这个文件 2.通过文件句柄操作文件 3.关闭文件. 文件基本操作: f = open('file.txt','r') #以只读方式打开一个 ...

随机推荐

  1. GItCandy版本库搬迁步骤

    1.编译GitCandy,源码地址http://git.newlifex.com/NewLife/GitCandy 2.发布网站到文件夹 3.git网站停止运行 4.拷贝发布的网站到服务器目录&quo ...

  2. python常用数据结构

    0. 字典初始化 d = {'a':1,'b':2} 或 d={} d['a'] = 1 d['b'] = 2 是不是和json格式数据很相似,语法和JavaScript又很相似 1. 变量接受序列分 ...

  3. Linux系统安装-MacBook网卡驱动问题解决

    先附上MacBook的linux安装教程 需要注意的是第7步中可能无法识别出OS X的系统,也没关系,只要格式化磁盘的时候注意选择对应磁盘即可,格式化成EXT4分区. 安装好后发现无法连接无线网络,应 ...

  4. 【epub.js|翻译|原创】开源中间件epub.js的使用及其中文文档

    epub是最流行的电子书规范之一,网络上对于Java Web有不少合适的方法来解析和呈现,但是关于epub.js的介绍比较少(尽管github上已经2K星了),更多的是概念性的内容,如: epub.j ...

  5. robotframework自动化系统:操作mysql数据库

    随着项目自动化深入和不断完善,大部分功能都已经能完成了自动化的操作:但是在设备添加的时候,遇到了难题.添加设备的时候mac必须是服务器设备管理中已经存在的mac地址,且是没有关联或绑定用户的设备信息. ...

  6. Mysql基础--表的操作

    1.表的基本概念 每一行代表一条唯一的记录,每一列代表记录中的一个字段. 2.创建表 例子: 3.查看表结构 (1)DESCRIBE语句查看表定义 语法: 例子: (2)SHOW CREATE TAB ...

  7. 分布式监控系统Zabbix3.2给异常添加邮件报警

    在前一篇 分布式监控系统Zabbix3.2跳坑指南 中已安装好服务端和客户端,此处客户端是被监控的服务器,可能有上百台服务器.监控的目的一个是可以查看历史状态,可以对比零晨和工作区间数据的对比,以便后 ...

  8. 【MySQL】20个经典面试题,全部答对月薪10k+

    Part2:经典题目 1.MySQL的复制原理以及流程 基本原理流程,3个线程以及之间的关联: 2.MySQL中myisam与innodb的区别,至少5点 (1).问5点不同: (2).innodb引 ...

  9. PHP魔术方法和魔术变量总结

    从php5以后的版本,类就可以使用魔术方法了.PHP规定以两个下划线开头的方法都保留为魔术方法,所以建议大家函数名最好不用__开 头,除非是为了重载已有的魔术方法. 目前php已有的魔术方法有 __c ...

  10. IDEA上传项目至git

    今天来分享一下从idea上传项目至coding的过程. 本文基于windows系统. idea提供了很方便的控制git的界面化操作,除了安装git和一些必要的配置之外,用到命令行的地方会非常少. 1: ...