首页 > 编程语言 > 详细

【Python函数与模块】(23)文件的读写

时间:2020-04-13 18:27:45      阅读:71      评论:0      收藏:0      [点我收藏+]

1. 读

def read_file():
    """读取文件"""
    file_name = "test.txt"
    file_name2 = "test2.txt"

    # 使用绝对路径
    file_path = "F:\\Code\\Python\\Step01\Chapter02\\file_rw\\test.txt"
    file_path2 = "F:/Code/Python/Step01/Chapter02/file_rw/test.txt"

    # 使用普通方法打开文件
    f = open(file_name, encoding=utf-8)
    # f2 = open(file_name2, encoding=‘utf-8‘)

    # 读取文件内容
    print(f.read())

    # 读取指定内容:read会记录上次读取的位置,在此基础上再读8个字符
    # print(f.read(8))
    # print(f.read(8))

    # 随机读取:跳过前20个字符(注意:若是中文文件,不好使用该方法读取,会报错)
    # f2.seek(20)
    # print(f2.read(5))
    # 输出:‘utf-

    # 按行读取:读一行
    # print(f.readline())
    # 输出:中国战“疫”主要采取了两大措施:

    # 读取所有行,返回list
    # print(f.readlines())
    # 输出:[‘一是对暴发地区进行封堵,阻断传播;\n‘, ‘二是基层群防群治,也就是联防联控。\n‘, ‘现在防控的核心也是两个,\n‘, ‘第一是保持距离,\n‘, ‘第二是戴口罩。‘]

    # 关闭文件
    f.close()

    # 使用with打开文件,可以不需要写关闭
    with open(file_path2, encoding=utf-8) as file:
        print(file.read())


if __name__ == "__main__":
    read_file()

2. 写

from datetime import datetime
import random


def write_file():
    """写入文件"""
    file_name = "write_test.txt"

    # 以写入的方式打开文件
    f = open(file_name, w)
    f.write("hello")
    f.write("\n")
    f.write("world")

    # 关闭文件
    f.close()


def write_mult_file():
    """写入多行内容"""
    file_name = "write_mult_test.txt"
    with open(file_name, w, encoding=utf-8) as f:
        l = ["第一行", "\n", "第二行", "\r", "第三行"]
        f.writelines(l)


def write_user_log():
    """记录用户日志,使用追加的方式,w是覆盖的方式"""
    file_name = "write_user_log.txt"
    rest = "用户:{0},时间:{1}".format(random.randint(1000,9999), datetime.now())
    with open(file_name, a, encoding=utf-8) as f:
        f.write(rest)
        f.write("\n")


def read_and_write():
    """先读,再写"""
    file_name = "read_and_write.txt"
    with open(file_name, r+, encoding=utf-8) as f:
        rest = f.read()
        # 若文件中含有1 写入aaa 反之写入bbb
        if "1" in rest:
            f.write("aaa")
        else:
            f.write("bbb")
        f.write("\n")


if __name__ == "__main__":
    write_file()
    write_mult_file()
    write_user_log()
    read_and_write()

 

【Python函数与模块】(23)文件的读写

原文:https://www.cnblogs.com/ac-chang/p/12692919.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!