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

    with关键字是让python妥善的打开或关闭文件

    读取整个文件
    # file1.txt
    
    3.1415926
    2.71828
    1.732
    
    with open('file1.txt') as file1:
        file_content=file1.read()
        print(file_content)
        
    结果:
    3.1415926
    2.71828
    1.732
    
    逐行读取文件
    with open('file1.txt') as file1:
        for line in file1:
            print(line.lstrip())
            
    结果:    # 由于每行末尾有一个看不见的换行符,用lstrip消除
    3.1415926
    2.71828
    1.732
    
    

    由于使用了with关键字,open()返回的文件对象只在with代码块中有用,如果要在代码块外面访问文件的内容,可以with代码块内将文件的各行存储在一个列表中

    with open('file1.txt') as file1:
        lines=file1.readlines()
    print(lines)
    
    结果:
    ['3.1415926
    ', '2.71828
    ', '1.732']
    

    open()函数有两个参数,第一个是要操作的文件,第二个是模式:1.'r'读取模式,默认;2.'w'写入模式;3.'a'附加模式;4.'r+'读取与写入模式

    写入空文件
    with open('file1.txt','w') as file1:
        file1.write('aaa')
    
    写入多行
    with open('file1.txt','w') as file1:
        file1.write('aaa
    ')
        file1.write('bbb
    ')
    
    附加到文件
    with open('file1.txt','a') as file1:
        file1.write('aaa
    ')
        file1.write('bbb
    ')
    

    Tips:

    1.如果要写入的文件不存在,函数open()将自动创建它,然而以写入模式打开文件时,如果已存在该文件,python将在返回文件对象前清空该文件
    2.如果要给文件添加附加内容,而不是覆盖原有内容,可以以附加模式打开该文件,如果文件不存在,将会创建一个空文件
    

    存储数据

    json.dump()

    import json
    numbers=[1,2,3,4]
    with open('file1.txt','w') as file1:
        json.dump(numbers,file1)
    
    读取数据

    json.load()

    import json
    numbers=[1,2,3,4]
    with open('file1.txt') as file1:
        a=json.load(file1)
    print(a)
    
    结果:
    [1, 2, 3, 4]
    
  • 相关阅读:
    使用systemctl管理指定服务需要做的配置
    挖矿病毒
    灰度发布系统
    血一般的教训,请慎用insert into select
    关于程序bug的闲谈
    来自一个网络监控软件的自述
    为什么CTO、技术总监、架构师都不写代码,还这么牛逼?
    原来 Elasticsearch 还可以这么理解
    爬了20W+条猫咪交易数据,它不愧是人类团宠
    NPUCTF2020 这是什么觅🐎
  • 原文地址:https://www.cnblogs.com/raind/p/9461197.html
Copyright © 2011-2022 走看看