「作者主页」:士别三日wyx
  此文章已录入专栏《Python入门到精通》
  2021最新版Python小白教程,针对0基础小白和基础薄弱的伙伴学习

文件操作

  • 1. 打开文件
    • 1.1 文件路径
      • 1.1.1 相对路径
      • 1.1.2 绝对路径
    • 1.2 模式
  • 2. 创建文件
  • 3. 读取文件
    • 3.1 读取所有文件
    • 3.2 读取指定字符
    • 3.3 读取指定行
    • 3.4 遍历文件
    • 3.5 关闭文件
  • 4. 修改文件
  • 5. 删除文件
  • 6. 删除目录

Python中提供了一些函数以方便我们 「操作文件」

1. 打开文件

open() 函数用来打开文件

语法

open( name, mode )

参数

  • name:文件路径
  • mode:可选,模式
  • 返回值:文件对象

在 E 盘创建文件 a.txt ,使用 open() 函数打开该文件

file = open('E://a.txt')
print(file)

输出:

<_io.TextIOWrapper name='E://a.txt' mode='r' encoding='cp936'>

1.1 文件路径

文件路径分为两种:

  1. 相对路径
  2. 绝对路径

1.1.1 相对路径

相对路径是指「相对于当前文件」的路径
打开当前目录下的 a.txt 文件

file = open('a.txt')
print(file)

输出:

<_io.TextIOWrapper name='a.txt' mode='r' encoding='cp936'>

1.1.2 绝对路径

绝对路径是指文章在「电脑」中的位置

打开 E 盘 Python 目录下的 a.txt 文件

file = open('E://python/a.txt')
print(file)

输出:

<_io.TextIOWrapper name='E://python/a.txt' mode='r' encoding='cp936'>

1.2 模式

修改参数 mode 的值,可以指定文件的「打开方式」

  • r:默认,读取,打开文件并读取,文件不存在则报错
  • a:修改,打开文件准备修改,文件不存在则创建
  • w:写入,打开文件准备写入,文件不存在则创建
  • x:创建文件,文件存在则报错

「打开模式」

  • t:默认,文本模式
  • b:二进制模式(图像)

以文本模式 「读取」文件 a.txt

file = open('a.txt', 'rt')
print(file)

输出:

<_io.TextIOWrapper name='a.txt' mode='rt' encoding='cp936'>

2. 创建文件

在当前目录创建文件 b.txt

open('b.txt', 'x')

检查左侧目录,会多出一个文件 b.txt

3. 读取文件

read() 函数用来读取文件内容

语法

read( n )

参数

  • n:可选,读取几个字符
  • 返回值:读取的内容

3.1 读取所有文件

读取文件 a.txt 的全部内容

file = open('a.txt', encoding='utf-8')
text = file.read()
print(text)

输出:

第一行
第二行
第三行
第四行
……

3.2 读取指定字符

读取文件 a.txt 的前 6个字符

file = open('a.txt', encoding='utf-8')
text = file.read(6)
print(text)

输出:

第一行
第二

3.3 读取指定行

readline() 函数可以读取一行内容
读取文件 a.txt 第一行内容

file = open('a.txt', encoding='utf-8')
text = file.readline()
print(text)

输出:

第一行

配合 for 循环读取多行内容,如读取 3 行

file = open('a.txt', encoding='utf-8')
i = 0
while i < 3:text = file.readline()print(text)i += 1

输出:

第一行第二行第三行

3.4 遍历文件

使用 for 循环遍历文件,「逐行读取」文件内容

file = open('a.txt', encoding='utf-8')
for text in file:print(text)

输出:

第一行
第二行
第三行
第四行
……

3.5 关闭文件

close() 函数可以关闭文件,如果文件未关闭,对文件的「修改」可能会「不生效」

file = open('a.txt', encoding='utf-8')
print(file.read(3))
file.close()

输出:

第一行

4. 修改文件

write() 函数可以向文件中写入内容
修改文件内容时,需要指定 open() 函数的参数

  • a:「追加」内容至文件末尾
  • w:「写入」内容至文件中(覆盖原文件内容)

向文件 a.txt 中追加内容

file = open('a.txt', 'a', encoding='utf-8')
file.write('新添加的内容')
file.close()# 修改模式的文件不可读,需重新打开文件
file = open('a.txt', 'r', encoding='utf-8')
print(file.read())

输出:

第一行新添加的内容

向文件 a.txt 中写入内容( 「覆盖」原内容)

file = open('a.txt', 'w', encoding='utf-8')
file.write('新添加的内容')
file.close()# 修改模式的文件不可读,需重新打开文件
file = open('a.txt', 'r', encoding='utf-8')
print(file.read())

输出:

新添加的内容

5. 删除文件

exists() 函数可以判断「文件是否存在」
remove() 函数可以根据文件名「删除文件」

import osif os.path.exists('a.txt'):print('文件存在,删除文件')os.remove('a.txt')
else:print('文件不存在,无法删除')

输出:

文件存在,删除文件

6. 删除目录

rmdir() 函数可以删除目录(文件夹)

import osos.rmdir('mulu')

观察左侧目录,文件夹 mulu 已被删除

《Python入门到精通》文件操作相关推荐

  1. python入门三:文件操作

    一.文件操作 1.文件对象:和c一样,要想对一个文件进行操作,需要获取该文件的对象 1 f = open("xxx") # 打开文件并获取文件对象 2 f.xxx # 对文件进行某 ...

  2. Python 入门学习10 —— 文件操作的应用及升级版三级菜单

    一.文件操作的基本流程 open( )   open( ) 方法用于打开一个文件,并返回文件对象,在对文件进行处理过程都需要使用到这个函数,如果该文件无法被打开,会抛出 OSError. open(f ...

  3. C语言从入门到精通——文件操作

    共用体和联合体: union test {char ch;short sh;int var; };联合体,内部所有成员变量地址一致.等同于整个联合体的地址.联合体的大小,是内部成员变量中,最大的那个成 ...

  4. python编程入门课 视频-Python入门到精通视频教程下载[21课程全]

    Python入门到精通视频教程 初级共21节课 python编程入门,针对0基础就python语言基础语法的各个点逐步讲解,由浅入深,通俗易懂,层层深入.提取码: python编程入门,针对0基础就p ...

  5. arcgis python 教程-ArcGIS Python 入门到精通,视频教程下载

    课程介绍: 本课程15章42个视频,基于ArcGIS10.2版本,涵盖了如何使用Python开发ArcGIS自定义工具,具体包括:编辑器的使用安装:列表函数使用:汉字乱码处理:游标(cursor)查询 ...

  6. python教程吾爱破解_2020年最新python入门到精通教程

    2020年最新python入门到精通教程 资源共享吧良心论坛,一直用心为每位会员服务,希望大家能学有所成,今天为大家分享一套2020年最新python入门到精通教程,如果你是0基础想学习python这 ...

  7. Python入门到精通【精品】第一章 - Python概述

    Python入门到精通[精品]第一章 - Python概述 1. Python语言历史 2. Python语言特点 3. Python的下载和安装 3.1. Python的下载 3.2. Python ...

  8. python基础教程视频下载-Python入门到精通视频教程下载[21课程全]

    Python入门到精通视频教程 初级共21节课 python编程入门,针对0基础就python语言基础语法的各个点逐步讲解,由浅入深,通俗易懂,层层深入.提取码: python编程入门,针对0基础就p ...

  9. 《Python入门到精通》运算符

    「作者主页」:士别三日wyx   此文章已录入专栏<Python入门到精通>   2021最新版Python小白教程,针对0基础小白和基础薄弱的伙伴学习 Python中提供了 7 种运算符 ...

最新文章

  1. Error:CPACK_PACKAGE_VERSION does not match version provided by version.hpp header!
  2. 深入剖析SolrCloud(一)
  3. PCB板上字母表示的含义
  4. Spring和CXF整合发布WebService(服务端、客户端)
  5. leetcode 之Remove Nth Node From End of List(19)
  6. [二叉树]二叉树中和为某一值的路径 (剑指offer24)
  7. 你知道你常用的dos和linux命令吗?
  8. mysql主从修改系统参数步骤_mysql主从配置的参数配置与步骤_MySQL
  9. Python批量转换ppt文件为pptx文件
  10. (转)正则表达式—RegEx(RegularExpressio)(三)
  11. cr3格式是什么意思_如何用PS导入佳能CR3格式图片?
  12. 解读《美国国家BIM标准》– BIM能力成熟度模型(六)
  13. SAP ERP常用事务代码和表
  14. Unity编程笔录--实现360全景视频和VR视频
  15. 安卓的短信记录导入苹果_如何把安卓系统的短信导入苹果手机
  16. 旅游网站首页——html
  17. 在进化计算中,软件进行元基编码的新陈代谢方式 V0. 1. 0
  18. VScode 设置 背景图片
  19. 未来5年到底是做什么生意最好?
  20. Fedora 17: 安装 perl-Tk

热门文章

  1. 培养创造性思维的20个技巧
  2. TZOJ 2099 Sightseeing tour(网络流判混合图欧拉回路)
  3. 我的程序员之路(4)——工作半年
  4. struct device结构体(2.6.23)
  5. Visual Assist X Options 注释设置-类
  6. springcloud2.0以上版本_eureka控制台显示_找不到${spring.cloud.client.ipAddress}_没有显示成IP地址---springcloud工作笔记165
  7. MFC工作笔记0001---认识MFC
  8. Netty工作笔记0078---Netty其他常用编解码器
  9. c++ 十进制、十六进制和BCD的相互转换
  10. Visual C++中动态链接库技术浅谈