python day06 文件处理

day06 文件处理

1.什么是文件

文件是操作系统提供给用户或者应用程序的一种操作硬盘的机制/功能

文件以二进制存到硬盘,当以文本格式取出时要定义编码格式(与写入时的编码一致)

2.为何要用文件

应用程序————>打开文件

操作系统————>文件

计算机硬件———>硬盘

3.如何用文件

文件操作的基本流程

  1. 应用程序打开文件,拿到一个文件对象/文件句柄

  2. 调用文件句柄下的读、写操作

  3. 关闭文件,回收操作系统资源

    # 一、文件操作的基本流程
    f = open(r'D:\pythondir\stu\time.html', 'r', encoding='utf-8')
    print(f)
    res= f.read()
    print(res)
    f.close()  # 关闭操作系统对文件的控制但句柄还在
    print(f)
    f.read()
    del f  # 删除句柄

    >>>><_io.TextIOWrapper name='D:\\pythondir\\stu\\time.html' mode='r' encoding='utf-8'>
    >>>>aaa,bbb
    >>>><_io.TextIOWrapper name='D:\\pythondir\\stu\\time.html' mode='r' encoding='utf-8'>
    >>>>ValueError: I/O operation on closed file.

    # 二、上下文管理
    with open('demo2.py', 'r', encoding='utf-8') as f:
       res = f.read()
       print(res)

文件的mode:

控制文件读写操作的模式

r (默认)

w

a

控制文件读写内容的模式

t (默认),无论读写都是以字符串为单位的,必须指定encoding编码,只针对文本文件

b binary,无论读写都是以二进制(会自动转化为bytes类型)为单位的,一定不能指定encoding,可以针对任何文件。

  1. r:只读模式:文件不存在则报错,文件存在文件指针则跳到文件开头

  2. w:只写模式,文件不存在则直接创建空的文档文件指针位于文件开头,文件存在则清空文件指针处于文件开头

  3. a:只追加写,文件不存在则创建空的文档文件指针位于文件末尾,文件存在则不清空文件文件指针处于文件末尾


"""
# 一 文件操作的基本流程
# f = open('D:/python17期/day08/代码/aaa/a.txt',mode='rt',encoding="utf-8") # windows默认:gbk
# # print(f)
# res = f.read()
# print(res)
#
# f.close()
# # print(f)
# # f.read()
#
# del f

# 二 上下文管理
# with open('aaa/a.txt',mode='rt',encoding="utf-8") as f,\
#         open(...) as f1,\
#         open(...) as f2:
#     f.read()
#     f1.read()
#     f2.read()

# with open('aaa/a.txt',mode='rt',encoding="utf-8") as f:
#     print(f.read())

# 文件的mode:
# 控制文件读写操作的模式
#     r(默认的)
#     w
#     a
# 控制文件读写内容的模式
#     t(默认的)
#     b

# 1、r:只读模式,文件不存在则报错,文件存在文件指针则跳到文件开头
# with open('aaa/a.txt',mode='rt',encoding="utf-8") as f:
#     print(f.read())

# # 2、w:只写模式,文件不存在则创建空文档文件指针处于文件开头,文件存在则清空文件指针处于文件开头
# with open('aaa/a.txt',mode='wt',encoding="utf-8") as f:
#     # f.write("你好\n")
#     # f.write("哈哈哈\n")
#     # f.write("我擦嘞\n")
#     f.write("撒打发士大夫")


# 3、a:只追加写模式,文件不存在则创建空文档文件指针处于文件末尾,文件存在则指针处于文件末尾
# with open('aaa/a.txt',mode='at',encoding="utf-8") as f:
#     f.write("你好1\n")
#     f.write("你好2\n")
#     f.write("你好3\n")

 

posted @ 2021-03-30 14:31  橘丶阳菜  阅读(44)  评论(0编辑  收藏  举报