zoukankan      html  css  js  c++  java
  • 8,文件操作

    f = open(“文件的路径”,"r(w,a)",encoding='utf-8') 

    r:只读,不能够写

    data = f.read()#读全部,只能读一次,想读第第二次需要调整光标

    print(f.tell()):告诉你光标的位置

    f.seek(0):将光标移动到指定位置

    f.readline()#读一行

    读多行用for循环,可以加判断读任意行

    f.readlines()#将文件转化成列表的形式,每一行为一个列表元素

    .strip()去掉空格和换行符

    for index,line in enumerate(f.readlines())#将列表的下标取出,然后判断哪行不打印

    for line in f:一行一行的读,这时f是一个迭代器,这时自己加一个计数器,这时最高效的

    w:新建一个文件,文件名存在会将原来的内容删除,然后写入新的东西,慎用,

    f.write(' ') 换行需要加‘ ’

    f.flush() 将写的内容立刻写入硬盘,以免断电

    a;追加,不会删除文件的原来内容,只在后面接着写

    进度条:

    import sys

    import time

        for i in range(50):

        sys.stdout.write("#")

        sys.stdout.flush() time.sleep(0.5)

    f.truncatr()无论在哪里都从开头开始截断

    f = open('文件路径','r+',encoding='utf-8')

    r+:可以读,无论光标在哪里只能在最后追加

    w+:写读模式,重新创建一个文件,存在就覆盖,也只能在后面追加,

    a+:追加读

    rb:二进制读,网络传输,

    wb: 二进制写

    文件的修改:

    两种方法:第一种,将文件全部读取到内存中,修改,然后再写回原文件中,这种不适合打得文件

    第二种方法:使用循环,将文件一行行读出并判断,找到要修改的地方修改,然后写到新文件中,

    使用字符串replace方法,或者直接给给line赋值,注意每行的换行符

  • 相关阅读:
    解决Chrome 70及以上版本的证书问题:Failed to load resource: net::ERR_CERT_SYMANTEC_LEGACY
    VUE使用axios数据请求时报错 TypeError: Cannot set property 'xxxx' of undefined 的解决办法
    生辰八字推算
    OneNote巧妙设置标题
    Kibana安装与介绍
    Logstash入门简介
    Metricbeat入门简介
    FileBeats入门简介
    ElasticSearch集群部署
    ElasticSearch安装与介绍
  • 原文地址:https://www.cnblogs.com/MaDon/p/9219005.html
Copyright © 2011-2022 走看看