1、三种字符串:
(1)u'' 普通字符串 ---> u'abc' ---> 默认的文本方式,以字符作为文本的输出方式
(2)b'' 二进制字符串 ---> b'ASCII码' ---> 以二进制(字节)作为文本输出方式,且文本内容必须为ASCII码
(3)r'' 原义字符串 ---> r'\n\t' ---> 将引号中的转移字符串以原本的意义表示出来(多用于文件路径的表示) 2、文件操作步骤
(1)通过文件名等从硬盘中找到相应的文件地址,使操作系统就有文件的操作权
(2)使用应用程序对文件进行操作
(3)操作完成后,应用程序向操作系统发送请求,使其释放文件的操作权 3、打开文件的方式
(1)使用open打开文件
f = open("文件路径及文件名","文件打开模式",enconding="utf-"8)
(2)使用with open...as 的方式进行文件操作
with open("文件路径及文件名","文件打开模式",enconding="utf-8") as f:
(3)使用with open 进行文件操作时,嵌套使用
with open("文件路径及文件名","操作模式",enconding="utf-8") as f1:
with open("文件的路径及文件名","操作模式",enconding="utf-8") as f2:
对文件的操作 4、文件的操作模式
主模式: r | w | a | x
从模式: t | b | + (1)r ---> 基本读操作
with open("文件路径及文件名","r",enconding="utf-8") as f1:
f1.read() --> 将整个文件读取进内存
f1.readline() --> 读取一行文件
f1.readlines() --> 将每行内容依次添加进列表中,并返回列表
对文件进行读操作,如果文件不存在则报错
# 如果想要一行一行的读取文件,可以使用for循环 ---> 重要点
for line in f1:
print(line) (2)w ---> 基本写操作
with open("文件路径及文件名","w",enconding="utf-8") as f1:
f1.write("哈哈")
f1.writerlines([必须为可迭代的对象,并且内容为字符串]) 对文件进行写操作,如果文件不存在则创建文件,如果文件存在,则清空文件从头开始写 (3)a ---> 追加操作
with open("文件路径及文件名","a",enconding="utf-8") as f1:
采用追加的方式对文件进行写操作,默认从文件的结尾添加 (4)x ---> 写操作,文件不存在创建,文件存在报错
with open("文件路径及文件名","x",enconding="utf-8") as f1:
如果文件存在则报错,如果文件不存在则创建文件并写入 t ---> 以文本方式进行文件的操作,是文件操作的默认方式, rt = r
(5) rt 以普通方式进行文件读操作,如果文件不存在则抱错问题 ---> 与 r 相同
(6) wt 以普通字符串的方式对文件进行写操作,如果文件存在则清空后写入,如果文件不存在则创建文件后写入 --> 与 w 相同
(7) at 以普通文本方式对文件进行追加操作,,默认写到文件的末尾 --->与 a 相同 b ---> 以字节的方式对文件进行操作
with open("文件路径及文件名","wb") as f1:
f1.write()
(8) rb 以字节的方式对文件进行读操作,如果文件不存在则报错
(9) wb 以字节的方式对文件进行操作,如果文件存在则清空后添加,如果文件不存在则创建文件
(10) ab 以字节的方式对文件进行操作,默认添加到文件的末尾 + ---> 以读写的方式对文件进行操作
(11) r+ 可读可写的读,如果文件不存在则报错,【如果文件存在则从头开始替换写】
(12) w+ 可读可写的写,如果文件存在则清空写,如果文件不存在则进行创建文件后进行写入
(13) a+ 可读可写的追加,如果文件不存在则进行创建,如果文件存在则在末尾进行添加 5、游标操作
游标由于是以字节作为移动的单位,所以文件必须是b模式,又因为只有在读取文件时才有游标,所以,文件的游标概念只有在 rb 模式下才能起作用
游标操作使用seek()方法,seek('移动的位数','起始的位置')
起始的位置主要有三个: 0 --> 文档开头
1 --> 当前位置
2 --> 文档末尾
with open("3.txt", "rb") as f:
f.seek(-2, 2)
print(f.read(2)) 6、文档的复制
with open("3.txt","r",encoding="utf-8") as f1:
with open("4.txt","w",encoding="utf-8") as f2:
for line in f1:
f2.write(line) 7、enconding编码
在使用 t 模式进行文件操作时,需要标明编码方式,enconding="utf-8"
在使用 b 模式进行文件操作时,不能标明编码方式,否则会报错

day08 文件操作的更多相关文章

  1. day08——文件操作

    day08 文件操作: open() :打开 f (文件句柄)= open("文件的路径(文件放的位置)",mode="操作文件的模式",encoding=&q ...

  2. day08文件操作的三步骤,基础的读,基础的写,with...open语法,文件的操作模式,文件的操作编码问题,文件的复制,游标操作

    复习 ''' 类型转换 1.数字类型:int() | bool() | float() 2.str与int:int('10') | int('-10') | int('0') | float('-.5 ...

  3. day08文件操作

    今日内容 文件操作 内容详细 1.打开文件 1.open("作业讲解.py",mode="r",encoding="utf-8") 2.文件 ...

  4. Python集训营45天—Day08 (文件操作)

    目录 1. 文件操作介绍 2. 文件的读写 2.1 文本文件 2.2 二进制文件 2.3 JSON文件 3. 文件的定位,重命名和删除 4. 文件夹的相关操作 1. 文件操作介绍 大家应该听说过一句话 ...

  5. python day08 文件操作

    2019.4.8 S21 day08笔记总结 一.进制 对于计算机而言无论是文件存储 / 网络传输数据本质上都是:二进制(010101010101),如:电脑上存储视频/图片/文件都是二进制: QQ/ ...

  6. Python:Day08 文件操作

    能调用方法的一定是对象! 文件的操作分为三步: 1.打开文件 2.操作文件 3.关闭文件 f= open('小重山','r',encoding='utf8') #以读的方式打开一个文件,如果文件不存在 ...

  7. 铁乐学Python_day08_文件操作

    一.[基本的文件操作] 参数: 1.文件路径: 2.编码方式: 3.执行动作:(打开方式)只读,只写,追加,读写,写读! #1. 打开文件,得到文件句柄并赋值给一个变量 f = open('E:/Py ...

  8. day08(字符编码,字符与字节,文件操作)

    一,复习 ''' 类型转换 1.数字类型:int() | bool() | float() 2.str与int: int('10') | int('-10') | int('0') | float(' ...

  9. day08 python文件操作

    day08 python   一.文件操作     1.文件操作的函数         open(文件名, mode=模式, encoding=字符集)       2.模式: r, w, a, r+ ...

随机推荐

  1. java中的线程池原理

    写的不错,https://www.cnblogs.com/dongguacai/p/6030187.html

  2. java.util.NoSuchElementException错误原因及解决方案

    1.原因:没有控制语句导致的迭代器的越界,使得map中的数据无法传入reduce,从而无法把结果传入目标文件中. 在进行Mapreduce实例——WordCount实验时遇到的错误,开始以为是lib包 ...

  3. asp.net获取当前请求的url

    asp.net获取当前请求的url 设当前页完整地址是:http://www.dgshop.com/Home/Manager?id=2&para=ASFDG [1]获取 完整url 代码如下: ...

  4. synchronized和lock有什么区别?

    一.原始构成 synchronized是关键字属于JVM层面,monitorenter(底层是通过monitor对象来完成,其实wait/notify等方法也依赖monitor对象只有在同步代码块和同 ...

  5. request+response+jsp+el+jstl

    response: 1.设置响应行的状态码: response.setStatus(int sc); 2.设置response缓冲区的编码:response.setCharacterEncoding( ...

  6. Python TypeError: not all arguments converted during string formatting ——元组tuple(a)和(a,)的区别

    今天写程序,想输出一个array的shape,原程序为: print('shape of testUImatrix:%s\nStart to make testUImatrix...'%(testui ...

  7. oracle篇 之 组函数

    一,常见组函数 1 . avg:求平均值,操作数值类型 2.sum:求和,操作数值类型 3.min:求最小值,操作任意类型 4.max:求最大值,操作任意类型 select avg(salary),s ...

  8. Nginx Http 过滤模块

    L69 执行顺序在content阶段后 log阶段前调用的 也就是处理完用户业务后 准备记录处理日志之前 我们可以到nginx http_model.c里查看 数组 执行顺序从下至上顺序执行 copy ...

  9. select2 3.5.3 二级下拉及搜索

    select2 [3.5.3]版本 select2 插件地址 http://select2.github.io/select2/ 支持搜索: JS代码,如果Group不需要勾选,goup不加id就可以 ...

  10. leanote折腾指南

    持续更新. 过几天把自己的修改好的css放到github上给大家参考. https://github.com/whuwangyong/leanote-conf TODO leanote Linux/W ...