zoukankan      html  css  js  c++  java
  • python-文件操作-读,写,追加

    '''
    open(文件的路径,打开文件的方式,打开的文件编码)

    文件的路径:
    可以使用绝对路径,也可以使用相对路径 建议使用相对路径
    打开文件的方式
    访问文件的方式
    r ---只读方式打开文件,文件的执政会放在文件开头,如果文件不存在就会报错
    w ---打开一个文件只用于写入,如果这个文件已存在,就将文件替换,如果文件不存在,创建文件
    a ---打开一个文件用于追加,文件存在的话 文件执政会放在文件的结尾,如果文件不存在创建文件
    r+ ---打开一份文件进行读写 文件的执政将会放在文件的开头
    w+ ---打开一个文件进行读写 如果这个文件已存在,将文件替换,如不存在,创建新文件
    a+ ---打开一个文件进行读写 文件存在的话 文件指针会放在文件的结尾 ,如文件不存在创建新文件

    rb ---以二进制形式打开只读方式打开文件,文件的执政会放在文件开头,如果文件不存在就会报错
    wb ---以二进制形式打开打开一个文件只用于写入,如果这个文件已存在,就降文件替换,如果文件不存在,创建文件
    ab ---以二进制形式打开打开一个文件用于追叫,文件存在的话 文件指针会放在文件的结尾,如果文件不存在创建文件
    rb+ ---以二进制形式打开打开一份文件进行读写 文件的指针将会放在文件的开头
    wb+ ---以二进制形式打开打开一个文件进行读写 如果这个文件已存在,将文件替换,如不存在,创建新文件
    ab+ ---以二进制形式打开打开一个文件进行读写 文件存在的话 文件指针会放在文件的结尾 ,如文件不存在创建新文件
    以二进制形式操作文件时,不要设置文件的编码方式
    '''
    '''
    读取的方式
    read() ---一次性全部读取
    read(size)---如果模式是以字符形式打开文件的 这个size便是的时读取子的的个数
    ---如果模式时以字节[二进制]形式打开的 这个size表示的时读取字节大小
    readline()---读取一行数据
    readlines()---读取所有行数据,并吧每一行当着元素放在列表中

    读取内容时,不会重复读取--类似迭代器

    与文件进行交互完毕关闭通道---不管是否出现异常-通道都需关闭
     
    读取文件

    目录结构

     1 #建立与文件之间的通道
     2 file_path = r'../test_01/os.py'
     3 
     4 #以字符形式打开一个文件 用于只读
     5 handle = open(file_path,'r',encoding='utf-8')
     6 
     7 
     8 
     9 #打开文件 文件指针的默认位置是开头
    10 #移动文件指针
    11 handle.seek(2)
    12 
    13 #读取数据2字节数
    14 data =handle.read(2)
    15 print(data)
    16 #
    17 data =handle.read(10)
    18 print(data)
    19 '''
    20 po
    21 rt os
    22 
    23 #获取
    24 '''
    25 #读取一行数据
    26 #已换行行为结束点的位置叫做一行
    27 line_data = handle.readline()
    28 print(line_data)
    29 
    30 #读取所有行
    31 line_data = handle.readlines()
    32 print(line_data)
    33 
    34 #以只读形式打开
    35 handle = open(r'../test_01/os.py', "r", encoding='utf-8')
    36 
    37 #以二进制方式读取
    38 handles = open(r'../test_01/os.py','rb')
    39 
    40 #通过通道读取数据
    41 data =handle.read()
    42 print(data)
    43 
    44 data1 =handles.read()
    45 print(data)
    46 print(data1)
    47 
    48 #关闭通道
    49 handle.close()

     写入文件与追加内容

    '''
    write(content)---如果模式是以字符形式打开文件的 这个content表示的是字符串数据
    ---如果模式时以字节[二进制]形式打开的 这个content表示是字节数据
    writelines(容器)---如果模式是以字符形式打开文件的 这个容器是字符串数据
    ---如果模式时以字节[二进制]形式打开的 这个容器中的数据是字节数据
    '''
    追加内容"w"改为'a'
     1 file_path =r'..	est	est.txt'
     2 
     3 #建立与文件之间的通道
     4 handle = None
     5 try:
     6     #文件存在会被清空
     7     handle = open(file_path,'w',encoding='utf-8')
     8     handle.write('啦啦啦')
     9     #写入多行数据需加换行符
    10     handle.writelines(['lkekekek
    ','hjshshshs
    ','啦啦啦啦啦
    '])
    11     handle.flush()
    12 
    13 except Exception as e:
    14   print(f'出现异常,异常情况是{e}')
    15 
    16 finally:
    17   if handle:
    18    handle.close()
    19    handle = None
  • 相关阅读:
    web前段知识
    如何查看服务器机型,如何查看软件的版本信息
    selenium server启动失败
    性能测试策略
    mysql_列出表中所有字段用逗号做分隔符
    复杂sql(1)
    orale建表查询
    javascript常用函数集
    orale用户角色管理
    数据流
  • 原文地址:https://www.cnblogs.com/cheng10/p/13476720.html
Copyright © 2011-2022 走看看