zoukankan      html  css  js  c++  java
  • python-day10--文件处理

    1.文件:是操作系统提供的概念

    2. open(r+'文件路径' , '打开方式' , '用什么字符编码')   #r 表示原始字符串

    eg:open(r'C:Users13264Desktopaaaa.py','r',encoding='utf-8')

    3.文件打开:

         f=open(r'aaaa.py')

      这个过程等于干了两件事:第一是操作系统打开文件,第二是在内存中开空间存一个变量

    4.文件回收:

        f.close    # 这是在关闭操作系统级别占有的内存

    5.文件的处理方法:

         ①文本文件:只读模式,文件不存在报错  

         read    readable    readline    readlines   

         扩展:光标的移动seek

        ②文本文件:只写模式,文件不存在会创建,文件存在则会清空文件内容

        write    writeable    writelines

        ③文本文件:只追加写模式,   'a'     ,文件不存在则创建,存在则在文本最后添加内容

        ④b模式:bytes模式

    #rb
    # f=open('aaaa.py','rb')
    # print(f.read().decode('utf-8'))

    # f=open('1.jpg','rb')
    # data=f.read()

    #wb
    # f=open('2.jpg','wb')
    # f.write(data)


    # f=open('new_3.txt','wb')
    # f.write('aaaaa '.encode('utf-8'))

    #ab
    f=open('new_3.txt','ab')
    f.write('aaaaa '.encode('utf-8'))

    6.上下文管理:不用担心文件的close

    # with open(r'aaaa.py','r',encoding='utf-8') as read_f,
    # open(r'aaaa_new.py','w',encoding='utf-8') as write_f:
    # data=read_f.read()
    # write_f.write(data)

      

    7.#循环取文件每一行内容

      with open('a.txt','r',encoding='utf-8') as f:
    # while True:
    # line=f.readline()
    # if not line:break
    # print(line,end='')

    # lines=f.readlines() #只适用于小文件
    # print(lines)
    for line in f: #推荐使用
             print(line,end='')



    8.文件的修改

    #方式一:只适用于小文件
    # import os
    # with open('a.txt','r',encoding='utf-8') as read_f,
    # open('a.txt.swap','w',encoding='utf-8') as write_f:
    # data=read_f.read()
    # write_f.write(data.replace('alex_SB','alex_BSB'))
    #
    # os.remove('a.txt')
    # os.rename('a.txt.swap','a.txt')


    #方式二:
    import os
    with open('a.txt','r',encoding='utf-8') as read_f,
    open('a.txt.swap','w',encoding='utf-8') as write_f:
    for line in read_f:
    write_f.write(line.replace('alex_BSB','BB_alex_SB'))

    os.remove('a.txt')
    os.rename('a.txt.swap','a.txt')
     
  • 相关阅读:
    从B树、B+树、B*树谈到R 树
    从LSM-Tree、COLA-Tree谈到StackOverflow、OSQA
    Linux Kafka源码环境搭建
    CentOS 关闭图形用户界面
    部署与管理ZooKeeper(转)
    spark 2.0.0集群安装与hive on spark配置
    hive on spark的坑
    Spark2.0.0源码编译
    hive spark版本对应关系
    CentOS7 设置集群时间同步
  • 原文地址:https://www.cnblogs.com/liuwei0824/p/7230846.html
Copyright © 2011-2022 走看看