美文网首页
python文件操作

python文件操作

作者: 爱写代码的小王子 | 来源:发表于2021-06-22 11:28 被阅读0次

    文件的基本操作 1.打开文件 2.读写文件 读:将文件内容写入内存 写:将内存的数据写入文件中 3.关闭文件

    在python操作文件通常使用4个函数(方法) 1.open 打开文件,返回文件操作的对象 2.read 读文件,将文件内容写入内存 3.write 写文件 4.close 关闭文件

    文件的打开方式只要有两种
    第一种,使用open直接打开

    #路径有绝对路径和相对路径
     f = open("C:/Users/dj-yz/Desktop/text.txt",encoding='utf-8')
    #对于文件操作来说,默认模式只是一个r,只读!!!
     file_text = f.read()
    

    第二种,使用语法糖,with关键字

    #文件的打开方式 with语法糖,不用手动 close
    with open("C:/Users/dj-yz/Desktop/text.txt",encoding='utf-8') as f1:
        print(f1.read())
    

    对文件进行操作:

    • r:只读操作(默认模式)
    • w:只写操作,如果文件存在,首先会清空源件的数据,文件指针放在文件头.如果文件不存在,则创建一个新文件
    • a:追加操作,文件指针放在文件的末尾
    • r+:以读写的方式打开文件,文件指针放在文件的头部。如果文件不存在,会抛出异常。
    • w+:以读写的方式打开文件,文件指针放在文件开头,如果文件存在,首先会清空源件的数据。
    • rb:以二进制(字节)的格式打开一个文件,文件指针放在文件的头部。如果文件不存在,会抛出异常。
    • wb:以二进制(字节)的格式写入一个文件,文件指针放在文件开头,如果文件存在,首先会清空源件的
    • a+:以读写的方式打开文件

    文件指针--光标,标记了从那个位置开始读取数据

    # f = open("C:/Users/dj-yz/Desktop/text.txt",encoding='utf-8',"w")
    # f = open("C:/Users/dj-yz/Desktop/text.txt","a",encoding='utf-8')
    # #文件指针--光标,标记了从那个位置开始读取数据
    # #第一次打开文件时,通常文件指针会指向文件的开始位置
    # f.write("未婚")
    # f = open("C:/Users/dj-yz/Desktop/text.txt",encoding='utf-8')
    # file_text = f.read()
    # file_text2 = f.read()
    # #光标移动到数据的末尾,再次读取内容为空
    # print(file_text2)
    

    r+对文件进行读写操作

    f = open("C:/Users/dj-yz/Desktop/text.txt","r+",encoding='utf-8')
    file_text = f.read()
    file_text
    

    w+读的时候会清空文件中的数据,a+则不会

    f = open("C:/Users/dj-yz/Desktop/text.txt","w+",encoding='utf-8')
    file_text = f.read()
    print(file_text)
    f.close
    

    读取一行,设置光标位置,指定读取字符的数量

    #读取一行
    f = open("C:/Users/dj-yz/Desktop/text.txt",encoding='utf-8')
    #设置光标位置
    f.seek(2)
    # 指定读取字符的数量
    f.read(6)
    f2 =  f.readline()
    print(f2)
    f.close
    # 读取所有行
    f = open("C:/Users/dj-yz/Desktop/text.txt",encoding='utf-8')
    f2 =  f.readlines()
    print(f2)
    

    对文件进行复制操作

    f = open("C:/Users/dj-yz/Desktop/text.txt",encoding='utf-8')
    f2 = open("C:/Users/dj-yz/Desktop/text_copy.txt","w",encoding='utf-8')
    content = f.read()
    f2.write(content)
    f.close()
    f2.close()
    

    如果文件比较大,可以使用循环,一行一行写入

    f = open("C:/Users/dj-yz/Desktop/text.txt",encoding='utf-8')
    f2 = open("C:/Users/dj-yz/Desktop/text_copy.txt","w",encoding='utf-8')
    
    while True:
        content = f.readline()
        if not content:
            break
        f2.write(content)
        
    f.close()
    f2.close()
    

    文本和字节的转换

    #文本和字节的转换
    str = "hello"
    #encode -  将字符串进行编码生成对应的字节
    s1 = str.encode('utf-8')
    #decode -  解码:将字节转为字符串
    s2 =s1.decode("gbk")
    print(s2)
    

    相关文章

      网友评论

          本文标题:python文件操作

          本文链接:https://www.haomeiwen.com/subject/vebpyltx.html