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

    1.语法示例
    file_path = r'C:Users cdcrDesktop新建文本文档.txt'#绝对路径
    with open(file_path,"r",encoding="utf-8") as f:
    #des = f.readlines();
    #print(des)
    for line in f.readlines():
    print(line);
    打开方式:r-->只读;w-->只写;r+ -->读写;w+ -->读写;a -->追加写;a+ -->追加读写;
    路径中含有 这样的转义字符,解决方法:
    path1 = r"C:Users	cdcrDesktop新建文本文档.txt"#加r
    path2 = "C:\Users\tcdcr\Desktop\新建文本文档.txt"#变为双反斜杠\
    path3 = "C:/Users/tcdcr/Desktop/新建文本文档.txt"#变为正斜杠
    f.read(size) #读取size的字符,一个汉字占2个字符。
    f.read() #读取所有字符,直接打印的结果:

    这是什么
    是小红帽

    f.readline(size)#读取当前行的size的字符,读完之后自动定位到下一行,可以使用while循环来读。
    f.readlines()#读取所有的字符,直接打印的结果是:['ufeff这是什么 ', '是小红帽']
    搞不清楚了,还是用下面这个吧,一行行的读:
    for line in f.readlines():
    print('行数据:'+line);
    输出:

    行数据:这是什么

    行数据:是小红帽

    2.seek()

    seek() 方法用于移动文件读取指针到指定位置。
    语法:fileObject.seek(offset[, whence])
    参数:
    offset 开始的偏移量,需要移动偏移的字节数
    whence:可选,默认值为 0。给offset参数一个定义,表示要从哪个位置开始偏移;0代表从文件开头开始算起,1代表从当前位置开始算起,2代表从文件末尾算起。
    示例:
    def tail(filepath):
    with open(filepath,'r+',encoding='utf-8') as f:
    print(f.readline())
    f.seek(6,0)#偏移6字节,一个汉字 utf-8
    print(f.readline())
    输出:
    这是什么
    是什么
    3.读取文件中的内容的时候会出现 ufeff,需要编码再解码
    解决方法:line.encode('utf-8').decode('utf-8-sig')

  • 相关阅读:
    Java随笔
    Java随笔
    Java随笔
    CF1271D Portals(反悔贪心)
    CF938D Buy a Ticket(最短路)
    CF1117C Magic Ship(二分)
    HDU6820 Tree(树形dp)
    P2393 美味(主席树+贪心)
    HDU6831 Fragrant numbers(区间dp)
    HDU6832 A Very Easy Graph Problem(生成树)
  • 原文地址:https://www.cnblogs.com/xsj1989/p/9075390.html
Copyright © 2011-2022 走看看