1、基本文件操作

  • open() 打开或者创建一个文件
格式:open('文件路径','打开模式')
返回值:文件io对象 打开模式一共N种: w模式 写模式write 文件不存在时会创建文件,如果文件已存在则会清空文件 r模式 读模式read 文件不存在就报错,存在则准备读取文件 a模式 追加模式 append 文件不存在则新建,文件存在则在文件末尾追加内容 x模式 抑或模式 文件存在则报错,文件不存在则新建文件 b模式 二进制模式 binary 辅助模式不能单独使用 +模式 增强模式plus 也是辅助模式不能单独使用
  • close() 关闭文件
格式:文件io对象.close()
返回值:None # 新建一个文件,文件名为:test.txt
f = open('test.txt', 'w') # 关闭这个文件
f.close()
  • read() 读取文件
格式:文件io对象.read()
返回值:整个文件的字符 格式:文件io对象.read(字符长度)
返回值:指定长度的字符
  • readline() 读取一行文件
格式:文件io对象.readline()
返回值:一行内容的字符串 格式:文件io对象.readline(字符长度)
返回值:一行内容的字符串 注意:字符长度<当前行内内容,则读取指定长度的字符串,并且下次再读取还是在
这个一行中获取没有读取的内容。字符长度>=当前行内容,直接读取当前行
  • readlines() 将文件中的内容读取到序列当中。
格式:文件io对象.readlines()
返回值:列表 格式:文件io对象.readlines(字符长度)
返回值:列表 注意:读取的行数由字符长度决定,如果字符长度读取了N行后,还有指定长度的字符
没有读取,则直接读取下一行进来
  • write() 写入文件
格式:文件io对象.write(字符串:str)
返回值:写入字符串的长度
  • writelines() 将序列写入文件中
格式:文件io对象.writelines(序列:list)
返回值:None

2、OS模块文件及文件夹操作

 OS模块中的函数:

序号 函数名称 描述 格式
1 getcwd() 获取当前的工作目录 格式:os.getcwd()
返回值:路径字符串
2 chdir() 修改当前工作目录 格式:os.chdir()
返回值:None
3 listdir() 获取指定文件夹中的
所有文件和文件夹组成的列表
格式:os.listdir(目录路径)
返回值:目录中内容名称的列表
4 mkdir() 创建一个目录/文件夹 格式:os.mkdir(目录路径)
返回值:None
5 makedirs() 递归创建文件夹 格式:os.makedirs(路径)
6 rmdir() 移除一个目录(必须是空目录) 格式:os.rmdir(目录路径)
返回值:None
7 removedirs() 递归删除文件夹 格式:os.removedirs(目录路径)
返回值:None
注意最底层目录必须为空
8 rename() 修改文件和文件夹的名称 格式:os.rename(源文件或文件夹,目标文件或文件夹)
返回值:None
9 stat() 获取文件的相关 信息 格式:os.stat(文件路径)
返回值:包含文件信息的元组
10 system() 执行系统命令 格式:os.system()
返回值:整型
慎用! 玩意来个rm -rf 你就爽了!
11 getenv() 获取系统环境变量 格式:os.getenv(获取的环境变量名称)
返回值:字符串
12 putenv() 设置系统环境变量 格式:os.putenv('环境变量名称',值)
返回值:无
注意:无法正常的getenv检测到。
13 exit() 推出当前执行命令,直接关闭当前操作 格式:exit() 返回值:无

3、OS.Path模块

 OS.Path模块函数部分:

序号 函数名称 描述 格式
1 abspath() 将一个相对路径转化为绝对路径 格式:os.path.abspath(相对路径)
返回值:绝对路径字符串
2 basename() 获取路径中的文件夹或者文件名称
(只要路径的最后一部分)
格式:os.path.basename(路径)
返回值:路径的最后一部分(可能是文件名也可能是文件夹名)
3 dirname() 获取路径中的路径部分(出去最后一部分) 格式:os.path.dirname(路径)
返回值:路径中除了最后一部分的内容字符串
4 join() 将2个路径合成一个路径 格式:os.path.join(路径1,路径2)
返回值:合并之后的路径
5 split() 将一个路径切割成文件夹和文件名部分 格式:os.path.split(路径)
返回值:元组
6 splitext() 将一个文件名切成名字和后缀两个部分 格式:os.path.splitext(文件名称)
返回值:元组 (名称,后缀)
7 getsize() 获取一个文件的大小 格式:os.path.getsize(路径)
返回值:整数
8 isfile() 检测一个路径是否是一个文件 格式:os.path.isfile(路径)
返回值:布尔值
9 isdir() 检测一个路径是否是一个文件夹 格式:os.path.isdir(路径)
返回值:布尔值
10 getctime() 获取文件的创建时间! get create time 格式:os.path.getctime(文件路径)
返回值:时间戳浮点数
11 getmtime() 获取文件的修改时间! get modify time 格式:os.path.getmtime(文件路径)
返回值:时间戳浮点数
12 getatime() 获取文件的访问时间! get active time 格式:os.path.getatime(文件路径)
返回值:时间戳浮点数
13 exists() 检测指定的路径是否存在 格式:os.path.exists(路径)
返回值:布尔值
14 isabs() 检测一个路径是否是绝对路径 格式:os.path.isabs(路径)
返回值:布尔值
15 islink() 检测一个路径是否是链接 格式:os.path.islink(路径)
返回值:布尔值
16 samefile() 检测2个路径是否指向同一个文件 格式:os.path.samefile(路径1,路径2)
返回值:布尔值

Python开发【第6节】【文件操作】的更多相关文章

  1. python开发_xml.etree.ElementTree_XML文件操作_该模块在操作XML数据是存在安全隐患_慎用

    xml.etree.ElementTree模块实现了一个简单而有效的用户解析和创建XML数据的API. 在python3.3版本中,该模块进行了一些修改: xml.etree.cElementTree ...

  2. (Python )格式化输出、文件操作、json

    本节学习Python的格式化输出,文件操作以及json的简单用法 1.格式化输出 将非字符串类型转换成字符串,可以使用函数:str() 或者repr() ,(这两个函数的区别目前我还没搞懂,求解答) ...

  3. 《Windows内核安全与驱动开发》4.1 文件操作

    <Windows内核安全与驱动开发>阅读笔记 -- 索引目录 <Windows内核安全与驱动开发>4.1 文件操作 从 C:\a.txt 中读取一部分内容并利用 DbgPrin ...

  4. 巨蟒python全栈开发-第8天 文件操作

    一.文件操作 今日大纲: 1.文件操作->open() open 打开 f=open(文件路径,mode='模式',encoding='编码格式') #python最最底层操作的就是bytes ...

  5. 使用 Python 进行稳定可靠的文件操作

    程序需要更新文件.虽然大部分程序员知道在执行I/O的时候会发生不可预期的事情,但是我经常看到一些异常幼稚的代码.在本文中,我想要分享一些如何在Python代码中改善I/O可靠性的见解. 考虑下述Pyt ...

  6. python的学习笔记01_5文件操作

    一,文件操作基本流程. 计算机系统分为:计算机硬件,操作系统,应用程序三部分. 我们用python或其他语言编写的应用程序若想要把数据永久保存下来,必须要保存于硬盘中,这就涉及到应用程序要操作硬件,众 ...

  7. python学习 day07打卡 文件操作

    本节主要内容: 初识文件操作 只读(r,rb) 只读(w,wb) 追加(a,ab) r+读写 w+写读 a+追加写读 其他操作方法 文件的修改以及另一种打开文件句柄的方法 一. 初识文件操作 使用py ...

  8. python教程(八)·文件操作

    由于离高考越来越近,博主打算本篇文章过后,暂停本系列教程的更新,等到高考完后再继续本系列教程,请谅解! 这次我们学习用python操作文件,包括文件的读.写等-- 操作文件第一步--打开文件 要想操作 ...

  9. python开发_搜索本地文件信息写入文件

    功能:#在指定的盘符,如D盘,搜索出与用户给定后缀名(如:jpg,png)相关的文件 #然后把搜索出来的信息(相关文件的绝对路径),存放到用户指定的 #文件(如果文件不存在,则建立相应的文件)中 之前 ...

  10. python基础(三)-- 文件操作

    一. 文件操作: 对文件操作流程 1.打开文件,得到文件句柄并赋值给一个变量 2.通过句柄对文件进行操作 3.关闭文件 现有文件如下 : Somehow, it seems the love I kn ...

随机推荐

  1. x86保护模式 实模式与保护模式切换实例

    x86保护模式     实模式与保护模式切换实例 实例一 逻辑功能   以十六进制数的形式显示从内存地址110000h开始的256个字节的值    实现步骤: 1  切换保护方式的准备 2. 切换到保 ...

  2. ajax 原生 post

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  3. 【bzoj2901】矩阵求和 前缀和

    题目描述 给出两个n*n的矩阵,m次询问它们的积中给定子矩阵的数值和. 输入 第一行两个正整数n,m. 接下来n行,每行n个非负整数,表示第一个矩阵. 接下来n行,每行n个非负整数,表示第二个矩阵. ...

  4. [luoguP3960] 列队(动态开点线段树)

    传送门 有splay的做法,有树状数组的做法... 最好理解的还是线段树的做法. 一开始我是这样想的,如果移动某一个人,只有当前行和最后一列会受到影响,感觉就像是个线段树,树状数组什么的. 然而接下来 ...

  5. BZOJ 1008: [HNOI2008]越狱【组合】

    很少有的思路秒解.题意可以描述成对长度为n的格子有m种染色方案,问存在相邻两个格子同色的方案数,正难则反易,考虑问题的背面任意两个相邻的格子都不同色,第一个格子可以涂任意一种颜色m种可能,剩下的n-1 ...

  6. Spell Boost

    Spell Boost 时间限制: 1 Sec  内存限制: 128 MB 题目描述 Shadowverse is a funny card game. One day you are playing ...

  7. Java 并发编程中的 Executor 框架与线程池

    Java 5 开始引入 Conccurent 软件包,提供完备的并发能力,对线程池有了更好的支持.其中,Executor 框架是最值得称道的. Executor框架是指java 5中引入的一系列并发库 ...

  8. HDU 5893 List wants to travel(树链剖分+线段树)

    题目链接 HDU5893 $2016$年$ICPC$沈阳网络赛的$B$题.这道题其和 BZOJ2243 基本一样 那道题我也写了题解 点这里 两道题的区别就是$BZOJ$这题是点的权值,这道题是边权. ...

  9. Codeforces 849B Tell Your World (计算几何)

    题目链接 Tell Your World 题意 给出N个点(i, xi),问是否存在两条平行的直线,使得每一个点恰好在两条直线的其中一条上. 每条直线必须穿过至少一个点. 考虑每个点和第1个点的斜率, ...

  10. Java I/O概述

    Java的I/O通过java.io包下的类.接口来支持.在java.io包下主要包括输入.输出两种IO流,每种输入.输出流又可分为字符流.字节流两大类. 字符流以字符为单位处理输入.输出操作,字节流以 ...