文件操作

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. Struts2-046验证脚本

    下面分享一下Struts2-046验证的python脚本 #encoding:utf-8 import urllib2 from poster.encode import multipart_enco ...

  2. [最短路]P1339 [USACO09OCT]热浪Heat Wave

    题目描述 The good folks in Texas are having a heatwave this summer. Their Texas Longhorn cows make for g ...

  3. Xshell显示图形化界面

    前言 很久没用过图形化界面了,都忘记怎么使用了.... 依据以往的经验都是由环境变量DISPLAY设置,然后就能连接了,每天也是匆匆忙忙的就过了一天,都不知道干了啥,分配的时间也少,但是一直纠结,进行 ...

  4. python_day06(ip代理池)

    from urllib.request import Request, ProxyHandler from urllib.request import build_opener from bs4 im ...

  5. Numpy入门 - 生成数组

    今天是Numpy入门系列教程第一讲,首先是安装Numpy: $ pip install numpy numpy是高性能科学计算和数据分析的基础包,本节主要介绍生成连续二维数组.随机二维数组和自定义二维 ...

  6. html5本地存储数据,实现自动登录功能

    背景: 在项目中遇到一个需求:用户登录完之后,网站自动保存用户id存储在本地,在下次打开网页时,通过id判断是否要进行登录操作. 技术方案: 在HTML5中,本地存储是一个window的属性,包括lo ...

  7. 安装 Qt 及所需 gcc 等

    嫌麻烦,下载离线安装包一次性装好 Qt 及 Qt Creator (Community) Qt 安装包下载地址 http://download.qt.io/official_releases/qt/ ...

  8. windows添加默认路由

    由于GW的原因,我们无法使用强大的google,身为技术屌丝,这是不能容忍的,于是乎使用了VPN,但是VPN连上之后,悲剧发生了,我的服务器连不上了,怎么整 原来一切都是很简单,在windows上添加 ...

  9. 【WF2017】Mission Improbable

    http://www.lydsy.com/JudgeOnline/problem.php?id=4950 对于俯视图很好解决,把所有不是0的位置拿到剩1就可以了. 对于正视图与侧视图,稍微想一下也能发 ...

  10. SQL-Oracle内实现柱形图式的效果

    在SQL SERVER内有一个函数replicate()可以实现柱形图效果,本质上是利用字符重复出现的次数来控制柱形图的长短,效果如图: 如果要在Oracle内实现相同的效果,则需要自己写一个函数: ...