zoukankan      html  css  js  c++  java
  • Python文档操作

    1.打开和关闭文件

    open('C:UsersSecond OneDesktopa.txt')文件路径必须完整路径且为字符串格式

    有三种方式:

    open('C:\Users\Second One\Desktop\a.txt')

    open('C:/Users/Second One/Desktop/a.txt')

    open(r'C:UsersSecond OneDesktopa.txt')

    close(打开后必须要关闭)

    2.文件打开模式rt,wt,at

    用读模式打开只能读,用写模式打开只能写,不能既读又写

    读:

    f = open(r'C:UsersSecond OneDesktopa.txt','r',encoding='utf-8')(以什么编码方式携程的文件就需要以什么编码方式打开)

    data = f.read()可以在括号中指定字符个数

    f.close()

    f.readline()默认读取一行

    f.readlines()将内容以列表形式展现出来

    写(覆盖):

    f = open(r'C:UsersSecond OneDesktopa.txt','w',encoding='utf-8')

    f.write()

    f.writable()是否可写

    f.writelines()括号内为可迭代对象

    f.close()

    写(追加):

    f = open(r'C:UsersSecond OneDesktopa.txt','a',encoding='utf-8')

    f.write( )可以另起一行

    f.close

    3.pycharm内置自动关闭文件函数

    with open(r'C:UsersSecond OneDesktopa.txt','r',encoding='utf-8') as f:

    文件内内容替换

    with open(r'C:UsersSecond OneDesktopa.txt','r',encoding='utf-8') as f1:

    data = f1.read()

    new = data.replace('abc','sb250')

    with open(r'C:UsersSecond OneDesktopa.txt','w',encoding='utf-8') as f2:

    f2.write(new)

    4.文件打开模式rb,wb,ab(二进制方式)

    with open(r'C:UsersSecond OneDesktopa.txt','rb') as f:

    data = f.read()可以按照字节读取内容

    f.write('你好'.encode('utf-8'))汉字必须要进行编码

    f.write(b'abc')英文字母及符号需要在字符串前加“b”或者进行转码

    5.文件内光标移动

    with open(r'C:UsersSecond OneDesktopa.txt','r',encoding='utf-8') as f:

    data=f.read(2)文件读取命令执行一次后光标会移动到读取出的内容的后面,下一次命令执行会在光标车次的位置开始读

    光标移动 f.seek()

    f.seek(0,0)后面的0表示把光标移动到开头,前面的数字代表光标移动步数

    f.seek(0,1)后面的1表示光标相对位置,前面的数字代表光标移动步数

    f.seek(0,2)后面的2表示把光标移动到末尾,前面的数字代表光标移动步数

    rt模式打开的文件前面的数字只能是0

    f.seek(2,0)表示把光标从头开始向右移动2个字节

    f.seek(1,1)表示把光标从当前位置想右移动1个字节

    f.seek(-3,2)表示把光标从结尾向左移动3个字节

    6.利用光标进行动态监控文件

    import time

    with open(r'C:UsersSecond OneDesktopa.txt','rb') as f:

    f.seek(0,2)

    while True:

    data = f.read()

    if  '404' in data:(此写法是错误的,字符串是无法与字节形式打开的文件进行比较的)

    if  b'404' in data:

    print(data)

    else:

    time.sleep(0.5)

  • 相关阅读:
    Vue源码探究-数据绑定的实现
    vue 数组遍历方法forEach和map的原理解析和实际应用
    vue 微信内H5调起支付
    uni-app官方教程学习手记
    vue-cli3 搭建的前端项目基础模板
    vue.js响应式原理解析与实现
    vue-waterfall2 基于Vue.js 瀑布流组件
    解决lucene更新删除无效的问题
    spring项目启动报错
    js监听页面copy事件添加版权信息
  • 原文地址:https://www.cnblogs.com/Agnostida-Trilobita/p/11023461.html
Copyright © 2011-2022 走看看