Python文件操作

1.常规格式

f = open(file="文件所在路径/文件名",mode="操作模式",encoding="选择的编码")
# 例如
f = open(file="D:/Python_pro/s_27/day05/test.py",mode="r",encoding="utf-8")
# 简写
f = open("D:/Python_pro/s_27/day05/test.py","r",encoding="utf-8")
注意:文件路径会出现转义现象
可以修改为
f = open("D:\\Python_pro\\s_27/day05\\test.py","r",encoding="utf-8")
或者
f = open(r"D:\Python_pro\s_27/day05\test.py","r",encoding="utf-8")
建议使用
f = open("D:/Python_pro/s_27/day05/test.py","r",encoding="utf-8")

2.文件操作的三部曲

  1. 打开文件
  2. 对文件进行操作
  3. 关闭文件
# 三步格式
f = open(file="文件所在路径/文件名",mode="操作模式",encoding="选择的编码")
f.read() 或 f.readline() 或 f.readlines() 或 f.write() 或 f.seek() 或 f.tell()
f.close()

自己有时候会忘记关闭文件,所以想要让其自动关闭因此可以写成如下的格式

# 自动关闭文件
可以同时打开多个文件
with open("ddd.txt","r",encoding="utf-8")as f,\
open("aaa.txt","r",encoding="utf-8")as f1:
print(f.read())
print(f1.read())

3.文件的操作模式与方法

# 读
mode = "r" # 只读
mode = "r+" # 读写
mode = "rb" # 读字节
f.read() #一次性读全部,容易造成内存溢出
f.readline() #一行一行的读
f.readlines() #一行一行的读并把结果加入列表
---------------------------------------------
# 写
mode = "w" # 清空写
mode = "w+" # 写读
mode = "a" # 追加写
mode = "a+" # 追加写读
mode = "wb"或"ab" #写字节
f.write() # 将字符串写入文件
---------------------------------------------
# 其他操作
f.seek() #移动光标
f.seek(0,0) # 将光标移动文件开头
f.seek(0,1) # 将光标移动到当前位置
f.seek(0,2) # 将光标移动文件末尾
f.seek(3) # 按照字节移动
# 查看光标位置
f.tell() # 按照字节查看,返回的是字节

4.文件操作常见错误

1.运行的文件和要打开的文件不是同一个文件夹下   通过路径
2.要打开的文件名和open里的名字不一致
3.使用word,记事本等软件造成的未知错误 不建议使用这种方式创建文件

5.文件内容的修改与备份示例

with open("原文件.txt","r",encoding="utf-8") as f, \
open("新建文件.txt","w",encoding="utf-8") as f1:
for line in f:
new_i = line.replace("要修改的旧内容","修改的新内容")
f1.write(new_i)
print("修改完成")
import os
os.rename("原文件.txt", "备份文件.txt")
os.rename("新建文件.txt", "原文件.txt")

python基础【第十篇】的更多相关文章

  1. python基础-第十篇-10.1HTML基础

    htyper text markup language 即超文本标记语言 超文本:就是指页面内可以包含图片.链接,甚至音乐,程序等非文字元素 标记语言:标记(标签)构成的语言 网页==HTML文档,由 ...

  2. python基础-第十篇-10.2CSS基础

    CSS是Cascading Style Sheet的简称,中文为层叠样式表 属性和属性值用冒号隔开,以分号结尾 引入方式 行内式--在标签的style属性中设定CSS样式 <body> & ...

  3. shell基础二十篇 一些笔记

    shell基础二十篇 转自 http://bbs.chinaunix.net/thread-452942-1-1.html 研讨:Bash 内建命令 read (read命令更具体的说明见博客收藏的一 ...

  4. Python 学习 第十篇 CMDB用户权限管理

    Python 学习 第十篇 CMDB用户权限管理 2016-10-10 16:29:17 标签: python 版权声明:原创作品,谢绝转载!否则将追究法律责任. 不管是什么系统,用户权限都是至关重要 ...

  5. Python基础【第一篇】

     一.Python简介 Python的创始人(Guido von Rossum 荷兰人),Guido希望有一种语言既能像C一样方便地调用操作系统的功能接口,也能像shell脚本一样,轻松地实现编程,A ...

  6. python基础-第六篇-6.2模块

    python之强大,就是因为它其提供的模块全面,模块的知识点不仅多,而且零散---一个字!错综复杂 没办法,二八原则抓重点咯!只要抓住那些以后常用开发的方法就可以了,哪些是常用的?往下看--找答案~ ...

  7. Python 基础学习 总结篇

    Python 基础学习总结 先附上所有的章节: Python学习(一)安装.环境配置及IDE推荐 Python学习(二)Python 简介 Python学习(三)流程控制 Python学习(四)数据结 ...

  8. Python基础(十)re模块

    Python基础阶段快到一段落,下面会陆续来介绍python面向对象的编程,今天主要是补充几个知识点,下面开始今天的内容. 一.反射 反射的作用就是列出对象的所有属性和方法,反射就是告诉我们,这个对象 ...

  9. python基础知识第一篇(认识Python)

    开发语言: 高级语言:python java php c++ 生成的字节码 字节码转换为机器码 计算机识别运行 低级语言:C 汇编 生成的机器码 PHP语言:适用于网页,局限性 Python,Java ...

  10. Python基础(十六):文件读写,靠这一篇就够了!

    文件读写的流程 类比windows中手动操作txt文档,说明python中如何操作txt文件? 什么是文件的内存对象(文件句柄)? 演示怎么读取文件 ① 演示如下 f = open(r"D: ...

随机推荐

  1. AttributeError: module 'requests' has no attribute 'get'的错误疑惑

    我发现文件直接用requests.get(url)会提示我AttributeError: module 'requests' has no attribute 'get' 我把问题百度了一下,解决方法 ...

  2. 监控工具 zxbbix

    报错 [Z3001] connection to database 'zabbix' failed: [2002] Can't connect to local MySQL server throug ...

  3. 两种图片延迟加载的方法总结jquery.scrollLoading.js与jquery.lazyload.js---转载

    jquery.scrollLoading方法 html <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml& ...

  4. ubuntu16.04安装docker11.09

    1.    安装Docker 操作系统 ubuntu16.04 1.1.   配置源文件 $sudo apt-get update #允许 apt 命令 HTTPS 访问 Docker 源 $sudo ...

  5. Jquery查找界面Html元素的方法(持续更新)

    1. 根据id来获取:$("#id") 2.根据class来获取:$(".class") 3.根据name来获取:$("[name=??]" ...

  6. Android中Parcelable的原理和使用方法

    Parcelable的简单介绍 介绍Parcelable不得不先提一下Serializable接口,Serializable是Java为我们提供的一个标准化的序列化接口,那什么是序列化呢? 进行And ...

  7. centos7下的Firewalld

    一.介绍 防火墙守护 firewalld 服务引入了一个信任级别的概念来管理与之相关联的连接与接口.它支持 ipv4 与 ipv6,并支持网桥,采用 firewall-cmd (command) 或 ...

  8. win10 + VS2015 编译 ARPACK

    step 1: 下载ARPACK , mingw-w64-install 和 mingw-get-inst-20120426.exe: step 2: 安装 MinGW-64默认安装路径即可. ste ...

  9. python3.x 匿名函数lambda_扩展sort

    #匿名函数lambda 参数: 表达式关键字 lambda 说明它是一个匿名函数,冒号 : 前面的变量是该匿名函数的参数,冒号后面是函数的返回值,注意这里不需使用 return 关键字. ambda只 ...

  10. C++ 使用老牌库xzip & unzip对文件进行压缩解压

    原文链接 https://www.codeproject.com/Articles/7530/Zip-Utils-clean-elegant-simple-C-Win https://www.code ...