python基础:文件操作

 

1.相对路径与绝对路径

--------- 绝对路径(absolute path): 一个完整的路径,从盘开始 D:\数据库--sqlite文件\工具.txt
--------- 相对对路:
                 同级   .  #现在不常用,找同级直接用文件名称
                 上一级   ..


目录 ---- 文件夹
文件


2.文件的打开与关闭
----- open(打开文件名, 打开方式)  --- 打开
----- close --- 关闭
文件有打开必须要有关闭
f = open('demo.py', 'r', encoding='utf8') 在操作二进制的时候不需要encoding

------ read   读
------ write  写

f.close()

|    r     | 以只读方式打开文件。文件的指针将会放在文件的开头。这是默认模式。 |
|    w     | 打开一个文件只用于写入。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。 |
|    a     | 打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。 |
|    rb    | 以二进制格式打开一个文件用于只读。文件指针将会放在文件的开头。这是默认模式。 |
|    wb    | 以二进制格式打开一个文件只用于写入。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。 |
|    ab    | 以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。 |
|    r+    | 打开一个文件用于读写。文件指针将会放在文件的开头。           |
|    w+    | 打开一个文件用于读写。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。 |
|    a+    | 打开一个文件用于读写。如果该文件已存在,文件指针将会放在文件的结尾。文件打开时会是追加模式。如果该文件不存在,创建新文件用于读写。 |
|   rb+    | 以二进制格式打开一个文件用于读写。文件指针将会放在文件的开头。 |
|   wb+    | 以二进制格式打开一个文件用于读写。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。 |
|   ab+    | 以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。如果该文件不存在,创建新文件用于读写。 |
3.文件常规操作
| 读取指定数量内容(在里面传入数值可控制读取数据多少)        | read()       |
| 读取一行的内容                                     | readline()   |
| 读取多行的内容                                     | readlines()  |
| 写入内容                                          | write()      |
| 写入多行内容                                       | writelines() |
| 立即刷新缓冲区域(手动保存)                       | flush()      |
| 获得游标位置                                       | tell()       |
| 调整游标位置                                       | seek()       |
4.文件光标(游标)的操作   读取文件数据是从光标后的位置开始读取,计算是以二进制数据进行计算,一个汉字是两个或者三个位置
------  获取游标位置  tell
------  调整游标位置  seek
------------ seek(offset, whence)
---------------- offset : 偏移量
---------------- whence : 默认值 0
                       ---- 0 :表示从文件开头计算偏移量
            --------- 二进制操作情况下可以使用下面这两种模式
                       ---- 1 :表示从游标当前位置计算偏移量
                       ---- 2 :表示从文件末尾开始计算偏移量
5.内置模块 --- os  --- 文件及目录操作
| 方法                   | 作用                                                         |
| ---------------------- | ------------------------------------------------------------ |
| os.getcwd()            | 显示当前路径                                                 |
| os.listdir()           | 展示当前目录内容                                             |
| os.chdir()             | 改变当前路径                                                 |
| os.mkdir()             | 创建目录(文件夹)                                           |
| os.rmdir()             | 删除指定路径的目录。仅当这文件夹是空的才可以, 否则, 抛出OSError |
| os.system()            | 系统命令执行                                                 |
| os.remove()            | 用于删除指定路径的文件。如果指定的路径是一个目录,将抛出OSError。 |
| os.rename('old','new') | 重命名目录或文件                                             |
| 方法                           | 作用                                                         |
| ------------------------------ | ------------------------------------------------------------ |
| os.path.join(path1 path2, ...) | 把目录和文件名合成一个路径                                   |
| os.path.basename(path)         | 返回文件名                                                   |
| os.path.abspath(path)          | 返回绝对路径                                                 |
| os.path.relpath(path[, start]) | path位置相对start的相对路径(相对路径)                      |
| os.path.getsize(path)          | 返回文件大小,如果文件不存在就返回错误                       |
| os.path.getctime(path)         | 返回文件 path 创建时间                                       |
| os.path.getmtime(path)         | 返回最近文件修改时间                                         |
| os.path.getatime(path)         | 返回最近访问时间(浮点型秒数)                               |
| os.path.exists(path)           | 如果路径 path 存在,返回 True;如果路径 path 不存在,返回 False。 |
| os.path.isdir(path)            | 判断路径是否为目录                                           |
| os.path.isfile(path)           | 判断路径是否为文件                                           |
| os.path.isabs(path)            | 判断是否为绝对路径                                           |
6. 上下文管理器  ---- with
# ------ as : 取别名
with open() as f:     #自动关闭文件,f是一个变量
    .........         #可以同时打开多个文件

7。 ----- 导包问题
# import sys
# print(sys.path)  可以导包的路径
# sys.path.append('') 添加导包路径
from从项目开始导

if __name__ == '__name__':     判断文件是否在当前文件执行

python文件自带一个属性:__name__
----------- 在当前文件运行: '__main__'
----------- 在其他文件中调用时: 为其文件名
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值