zoukankan      html  css  js  c++  java
  • 文件操作

    写文件

    f = open("xxxx.txt",'w')
    f.write("hhh")
    f.close()

    读文件

    f = open("xxxx.txt",'r')
    countent = f.read()
    print(countent)
    f.close()

    复制文件

    #1.获取用户要复制的文件名
    old_file_name = input("请输入要复制的文件名:")
    #2.打开要复制的文件名
    old_file = open(old_file_name,'r')
    #3.新建一个文件
    # name,tail = old_file_name.split('.')
    # new_file_name = name+'[复件]'+"."+tail
    position = old_file_name.rfind(".")
    new_file_name = old_file_name[:position]+"[复件]"+old_file_name[position:]
    new_file = open(new_file_name,'w')
    #4.从旧文件中读取数据并写入到新文件中
    content = old_file.read()
    new_file.write(content)
    old_file.close()
    new_file.close()

    大文件操作

    read(),一次性全读取,文本过大会内存泄露。

    readline(),一次读一行,效率问题。

    readlines(),读取所有行然后把它们作为一个字符串列表返回。

    #1.获取用户要复制的文件名
    old_file_name = input("请输入要复制的文件名:")
    #2.打开要复制的文件名
    old_file = open(old_file_name,'r')
    #3.新建一个文件
    # name,tail = old_file_name.split('.')
    # new_file_name = name+'[复件]'+"."+tail
    position = old_file_name.rfind(".")
    new_file_name = old_file_name[:position]+"[复件]"+old_file_name[position:]
    new_file = open(new_file_name,'w')
    #4.从旧文件中读取数据并写入到新文件中
    while True:
        content = old_file.read(1024)
        if len(content)==0:
            break
        new_file.write(content)
    old_file.close()
    new_file.close()

    定位读写

    f = open("test.py")
    f.seek(2,0) #seek(0,2),2为偏移量,0表示文件开头,1为当前位置,2为文件结尾
    content = f.read()
    locate = f.tell() #文件指针的位置
    print(content)
    print(locate)
  • 相关阅读:
    Thinkphp6笔记十八:默认分页2
    Thinkphp6笔记十八:默认分页1
    Thinkphp6笔记十七:模板标签使用
    Thinkphp6笔记十六:IP黑名单
    Thinkphp6笔记十五:模板路径自定义配置
    Thinkphp6笔记十四:Redis配置
    Thinkphp6笔记十三:验证器(模型验证)
    Thinkphp6笔记十三:验证器(场景验证)
    Thinkphp6笔记十三:验证器(控制器验证)
    Thinkphp6笔记十二:多数据库配置
  • 原文地址:https://www.cnblogs.com/rongpeng/p/12496582.html
Copyright © 2011-2022 走看看