zoukankan      html  css  js  c++  java
  • Python自动化开发文件

    Python自动化开发-文件处理

    文件处理

      1.  文件操作简单示范

    处理文件例1:读文件

    在相同目录下,创建文件:file01,

    文件内容如下:

    file01
    test
    test
    20210105

    #!/usr/bin/env python
    # -*- coding:utf-8 -*-
    
    #文件处理
    #文件句柄
    f01=open('file01')
    #文件保存
    r01=f01.read()
    #输出文件内容
    print(r01)
    #打开文件后,关闭文件(句柄)
    f01.close()
    View Code

    代码运行结果:

    file01
    test
    test
    20210105 

      2.  文件(打开)处理模式

    最常用的三种文件处理模式:r(只读),w(只写),a(内容追加)。接下来一一介绍给伙伴们哈~

    1)读文件

    读文件:read ,readline,readlines

    读文件例1:

    file1文件内容:

    test1
    20210105
    tttttt
    nnnnnkkdk
    #!/usr/bin/env python
    # -*- coding:utf-8 -*-
    
    #文件打开处理模式
    #文件句柄
    f01=open('file01')
    r01=f01.readlines()
    print(r01)
    View Code

    代码运行结果:

    ['test1\n', '20210105\n', 'tttttt\n', 'nnnnnkkdk\n']

    读文件例2:

    file01文件内容:

    11111111111
    2222222222222
    333333333333333333333
    4444444
    #!/usr/bin/env python
    # -*- coding:utf-8 -*-
    
    #文件打开处理模式
    #文件句柄
    f01=open('file01')
    #readline():每次读取一行
    r01=f01.readline()
    r01=f01.readline()
    r01=f01.readline()
    print(r01)
    View Code

    代码运行结果:

    333333333333333333333

    读文件例3:

    file1文件内容:

    11111111111
    2222222222222
    333333333333333333333
    4444444
    #!/usr/bin/env python
    # -*- coding:utf-8 -*-
    
    #文件打开处理模式
    #文件句柄
    f01=open('file01')
    #read():读取全部内容
    r01=f01.read()
    print(r01)
    View Code

    代码运行结果:

    11111111111
    2222222222222
    333333333333333333333
    4444444

    2)写文件

    注意写入文件的内容必须是字符串,其它类型的内容都不允许!

    file02文件为空,写入如下内容:

    6666
    7777

    写文件例1:write()

    #!/usr/bin/env python
    # -*- coding:utf-8 -*-
    
    #文件写操作
    f01=open('file02','w')
    f01.write('6666\n')
    f01.write('7777\n')
    f01.close()
    View Code

    文件写入内容成功如下:

    6666

    7777

    写文件例2:

    file02文件内容如下:

    6666

    7777

    #!/usr/bin/env python
    # -*- coding:utf-8 -*-
    
    #文件写操作
    f01=open('file02','w')
    f01.write('6666\n')
    f01.write('7777\n')
    f01.write('88\n99\n')
    f01.writelines(['999\n','101\n'])
    f01.close()
    View Code

    写入后的file02文件内容写入成功如下:

    6666

    7777

    88

    99

    999

    101

    3)文件内容追加

    文件内容追加例1:

    file02原文件内容:

    111
    2222
    33333
    dfgflg
    xcvb

    #!/usr/bin/env python
    # -*- coding:utf-8 -*-
    #文件内容追加
    f01=open('file02','a',encoding='utf-8')
    f01.write('\n追加哈哈')
    f01.close()
    View Code

    file03追加成功后的内容如下:

    111
    2222
    33333
    dfgflg
    xcvb
    追加哈哈

    4)使用with替代open打开文件

      使用with替代open打开文件,好处就是系统自动关闭文件,无需手工关闭文件。

    例1:

     file03文件内容如下:使用with替代open

    1111
    2222
    333333

    #!/usr/bin/env python
    # -*- coding:utf-8 -*-
    
    #文件内容追加,使用with替代open
    with open('file03','a') as f03:
        f03.write('\nzhuijia444444')
        f03.write('\nzhuijia55555555')
    f03.close()
    View Code

    代码执行后,file03文件追加后的内容如下:

    1111
    2222
    333333
    zhuijia444444
    zhuijia55555555

    5)文件处理b模式

    文件b模式例1:

    file03文件内容如下:

    1111
    2222
    333333
    zhuijia444444
    zhuijia55555555

    #!/usr/bin/env python
    # -*- coding:utf-8 -*-
    
    #读取文件使用b模式(bite字节方式去读取文件内容)
    with open('file03','rb') as f03:
        r01=f03.read()
        print(r01)
        f03.close()
    View Code

    代码执行后,输出结果内容为:

    b'1111\r\n2222\r\n333333\r\nzhuijia444444\r\nzhuijia55555555'

    需要提醒下:由于我使用的是pycharm安装在windows系统中,所以"\r\n"在windows系统表示换行!"\n"在linux系统中表示换行!

    6)文件操作的其它方式

      3.  自我练习实践

    练习实践1:

    向一个不存在的文件写入内容,这个文件如果不存在,会自动创建该文件。

    #!/usr/bin/env python
    # -*- coding:utf-8 -*-
    
    #使用with代替open,对文件进行读,写,追加操作
    #打开文件如果不存在,会自动创建该文件,文件写操作
    #文件test02不存在,会自动创建这个文件,并且会向这个文件写入内容
    r=open('test02','w',encoding='utf-8')
    f1=r.write('向test01文件追加内容哈哈20220105')
    r.close()
    View Code

    代码执行后,会自动创建这个不存在的文件并且会向这个文件写入内容如下:

    向test01文件追加内容哈哈20220105

    练习实践2:

    向文件追加内容,原文件内容:

    向test01文件追加内容哈哈20220105

    #!/usr/bin/env python
    # -*- coding:utf-8 -*-
    
    #使用with代替open,对文件进行读,写,追加操作
    #打开文件如果不存在,会自动创建该文件,文件追加操作
    r=open('test02','a',encoding='utf-8')
    f1=r.write('\n向test02文件追加内容哈哈')
    r.close()
    View Code

    代码执行后,追加后的文件内容如下:

    向test01文件追加内容哈哈20220105
    向test02文件追加内容哈哈

    你不向我走来,我便向你走去。
  • 相关阅读:
    git常用命令
    vue+el-menu+vue-router实现动态导航条
    css实现文字内容超出显示省略号
    背景图片居中全屏自适应显示
    linux相关操作(虚拟环境、查看进程)(不定时更新)
    关于定义序列化器时,read_only和write_only有什么作用
    flask之请求与响应、闪现(阅后即焚)、请求扩展(before,after)、中间件、LOCAL对象、偏函数、
    flask之web网关、三件套、配置、路由(参数、转化器及自定义转化器)、cbv、模板语言、session
    flask中的endpoint、自定义转化器、与djnago中session区别、利用装饰器实现登录认证
    jinja2模板用法
  • 原文地址:https://www.cnblogs.com/renyongbin/p/15765387.html
Copyright © 2011-2022 走看看