1、文件操作

1.1 基本模式

# 格式         f = open("相对路径/绝对路径",mode = "模式",encoding = "编码级")

# 模式
# w ------> write (不存在则创建,存在则清空,光标在最后)
# r ------> read (不存在则报错,光标在开头,参数为字符)
# a ------> append (不存在则创建,存在则追加,强制光标在最后)

# 1 打开文件
f = open("practice.txt",mode="w",encoding="utf-8")
# 2 写入内容
f.write("我爱中国")
# 3 关闭文件
f.close()

  

1.2 字节流模式

# bytes(b'123')  只能识别 ascll 编码,需要编码、解码

# wb
# rb
# ab

f1 = open("practice.txt",mode="wb")
f1.write("我爱中国".encode())
f1.close()

f2 = open("practice.txt",mode="rb")
res = f2.read()
f2.close()
print(len(res)) # 计算二进制字节流的长度(12)
res1 = res.decode() # 把二进制字节流解码为utf-8
print(res,res1) # b'\xe6\x88\x91\xe7\x88\xb1\xe4\xb8\xad\xe5\x9b\xbd' 我爱中国

  

1.2.1 脚本复制图片

# 不指定 encoding
f = open("picture.png",mode = "rb")
res = f.read()
f.close()
f = open("picture副本.png",mode = "wb")
f.write(res)
f.close()

  

1.3 扩展模式

# r+
# r+ 先读后写
f = open("practice.txt",mode="r+",encoding="utf-8")
# 先读
res = f.read()
print(res)
# 后写
f.write("人生苦短")
# 在读
f.seek(0) # 调整光标位置在开头
res = f.read()
print(res)
f.close()

# r+ 先写后读
f = open("practice.txt",mode="r+",encoding="utf-8")
f.seek(0,2) # 调整光标位置在末尾
f.write("我用python")

f.seek(0)
res = f.read()
print(res)
f.close()
# w+
# a+
# r+b
# w+b
# a+b

  

1.4 with 语法(不需要close)

# 格式一
with open("相对路径/绝对路径",mode = "模式",encoding = "编码级") as f :
pass

# 格式二
with open("相对路径/绝对路径",mode = "模式",encoding = "编码级") as f1 ,open("相对路径/绝对路径",mode = "模式",encoding = "编码级") as f2 :
pass

  

1.5 flush 刷新缓冲区

# write 只写到内存
"""
1、文件关闭时,自动刷新缓冲区
2、程序运行结束时,自动刷新缓冲区
3,缓冲区内存写满时,自动刷新缓冲区
"""
# 4、手动刷新刷冲区,f.flush
f = open("practice.txt",mode="w",encoding="utf-8")
while True:
data = input("请输入内容:")
f1.write(data)
f1.flush()
f1.close()

  

1.6 文件方法

f.seek(0)                  # 调整光标位置到开头(字节)
f.seek(0,2) # 调整光标位置到最后
f.tell() # 光标位置向左到开头的字节数
f.readable() # 判断文件是否可读
f.writable() # 判断文件是否可写
f.readline() # 读一行
f.readlines() # 读所有行,原型存入列表
f.writelines() # 写入内容是字符串的可迭代的数据
f.truncate() # 截取字节,清空文件,再写入截取内容

  

day9 python之文件操作的更多相关文章

  1. Python :open文件操作,配合read()使用!

    python:open/文件操作 open/文件操作f=open('/tmp/hello','w') #open(路径+文件名,读写模式) 如何打开文件 handle=open(file_name,a ...

  2. Python 常见文件操作的函数示例(转)

    转自:http://www.cnblogs.com/txw1958/archive/2012/03/08/2385540.html # -*-coding:utf8 -*- ''''' Python常 ...

  3. 孤荷凌寒自学python第三十五天python的文件操作之针对文件操作的os模块的相关内容

     孤荷凌寒自学python第三十五天python的文件操作之针对文件操作的os模块的相关内容 (完整学习过程屏幕记录视频地址在文末,手写笔记在文末) 一.打开文件后,要务必记得关闭,所以一般的写法应当 ...

  4. 孤荷凌寒自学python第三十三天python的文件操作初识

     孤荷凌寒自学python第三十三天python的文件操作初识 (完整学习过程屏幕记录视频地址在文末,手写笔记在文末) 今天开始自学python的普通 文件操作部分的内容. 一.python的文件打开 ...

  5. python中文件操作的六种模式及对文件某一行进行修改的方法

    一.python中文件操作的六种模式分为:r,w,a,r+,w+,a+ r叫做只读模式,只可以读取,不可以写入 w叫做写入模式,只可以写入,不可以读取 a叫做追加写入模式,只可以在末尾追加内容,不可以 ...

  6. python中文件操作的其他方法

    前面介绍过Python中文件操作的一般方法,包括打开,写入,关闭.本文中介绍下python中关于文件操作的其他比较常用的一些方法. 首先创建一个文件poems: p=open('poems','r', ...

  7. Python常见文件操作的函数示例

    # -*-coding:utf8 -*- ''''' Python常见文件操作示例 os.path 模块中的路径名访问函数 分隔 basename() 去掉目录路径, 返回文件名 dirname() ...

  8. python的文件操作及简单的用例

    一.python的文件操作介绍 1.文件操作函数介绍 open() 打开一个文件 语法:open(file, mode='r', buffering=-1, encoding=None, errors ...

  9. python基本文件操作

    python文件操作 python的文件操作相对于java复杂的IO流简单了好多,只要关心文件的读和写就行了 基本的文件操作 要注意的是,当不存在某路径的文件时,w,a模式会自动新建此文件夹,当读模式 ...

随机推荐

  1. CSS文本相关之水平排列[4]

    在正常流中,文本都是从左往右.自上而下排列显示,如果想要改变排列方向的话,可以通过CSS属性来改变. text-align属性 文本排列(text-align)可改变文本在水平上的方向,但不改变内部的 ...

  2. Arduino + RFID 读取 IC 卡 Arduino uno中获得RFID的UID 并通过串口转发RFID卡号

    RFID简介:射频识别即RFID(Radio Frequency IDentification)技术,又称无线射频识别,是一种通信技术,可通过无线电讯号识别特定目标并读写相关数据,而无需识别系统与特定 ...

  3. 基于NACOS和JAVA反射机制动态更新JAVA静态常量非@Value注解

    1.前言 项目中都会使用常量类文件, 这些值如果需要变动需要重新提交代码,或者基于@Value注解实现动态刷新, 如果常量太多也是很麻烦; 那么 能不能有更加简便的实现方式呢? 本文讲述的方式是, 一 ...

  4. JS新界面关闭原界面刷新的多种形式

    ------------恢复内容开始------------ 1.新界面为当前界面弹出的形式: 第一步:首先原界面的原生JS事件需要放到 (function () {  ......  })(); 中 ...

  5. leetcode-cn 剑指offer

    目录 面试题06 从尾到头打印链表 面试题07 重建二叉树 面试题09 用两个栈实现队列 面试题10- I 斐波那契数列 面试题11 旋转数组的最小数字 面试题12. 矩阵中的路径 面试题52. 两个 ...

  6. [白话解析] 通过实例来梳理概念 :准确率 (Accuracy)、精准率(Precision)、召回率(Recall)和F值(F-Measure)

    [白话解析] 通过实例来梳理概念 :准确率 (Accuracy).精准率(Precision).召回率(Recall)和F值(F-Measure) 目录 [白话解析] 通过实例来梳理概念 :准确率 ( ...

  7. redis配置文件中slave-serve-stale-data的解释

    redis.conf文件中可以看到slave-serve-stale-data这个参数,作用是什么? 原文解释: # When a slave loses its connection with th ...

  8. 微服务配置中心 Apollo 源码解析——Admin 发送发布消息

    内容参考:https://www.toutiao.com/a6643383570985386509/ 摘要: 原创出处http://www.iocoder.cn/Apollo/admin-server ...

  9. JavaWeb网上图书商城完整项目--day02-21.退出功能的实现

    1.当用户点击退出的时候,跳转到登陆页面 当用户点击退出的时候,需要将session中保存的登陆的用户销毁掉 当用户点击退出的时候,调用UserServlet的quit方法 退出按钮在top.jsp中 ...

  10. 在 Spring Boot 中使用 HikariCP 连接池

    上次帮小王解决了如何在 Spring Boot 中使用 JDBC 连接 MySQL 后,我就一直在等,等他问我第三个问题,比如说如何在 Spring Boot 中使用 HikariCP 连接池.但我等 ...