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

    file:

    jim|123|1
    tom|321|3
    kamil|432|1
    
    # __author__ = liukun
    # coding:utf-8
    obj = open('file.txt','r')
    line_list = obj.readlines() #['jim|123|1
    ', 'tom|321|3
    ', 'kamil|432|1']
    obj.close
    print(line_list)
    
    open(路径+文件名,读写模式)
    读写模式:r只读,r+读写,w新建(会覆盖原有文件),a追加,b二进制文件.常用模式
    如:'rb','wb','r+b'等等
    
    读写模式的类型有:
    rU 或 Ua 以读方式打开, 同时提供通用换行符支持 (PEP 278)
    w     以写方式打开,
    a     以追加模式打开 (从 EOF 开始, 必要时创建新文件)
    r+     以读写模式打开
    w+     以读写模式打开 (参见 w )
    a+     以读写模式打开 (参见 a )
    rb     以二进制读模式打开
    wb     以二进制写模式打开 (参见 w )
    ab     以二进制追加模式打开 (参见 a )
    rb+    以二进制读写模式打开 (参见 r+ )
    wb+    以二进制读写模式打开 (参见 w+ )
    ab+    以二进制读写模式打开 (参见 a+ )
    
    1、使用'W',文件若存在,首先要清空,然后(重新)创建,
    
    2、使用'a'模式 ,把所有要写入文件的数据都追加到文件的末尾,即使你使用了seek()指向文件的其他地方,如果文件不存在,将自动被创建。
    
    f.read([size]) size未指定则返回整个文件,如果文件大小>2倍内存则有问题.f.read()读到文件尾时返回""(空字串)
    
    file.readline() 返回一行
    
    file.readline([size]) 返回包含size行的列表,size 未指定则返回全部行
    
    for line in f: print line #通过迭代器访问
    
    f.write("hello
    ") #如果要写入字符串以外的数据,先将他转换为字符串.
    
    f.tell() 返回一个整数,表示当前文件指针的位置(就是到文件头的比特数).
    
    f.seek(偏移量,[起始位置])
    
    用来移动文件指针
    
    偏移量:单位:比特,可正可负
    
    起始位置:0-文件头,默认值;1-当前位置;2-文件尾
    
    f.close() 关闭文件
    
    公众号请关注:侠之大者
  • 相关阅读:
    [Project Euler] Problem 58
    [Project Euler] Problem 59 Decrption
    [Project Euler] Problem 57
    VS2010 + WinDDK 搭建驱动开发环境
    利用C++模板特性计算各整数类型的最大最小值
    虚表的那些事儿
    ModuleNotFoundError: No module named 'pip._vendor.six'
    OpenCVPython系列之单应性查找对象理论篇
    OpenCVPython系列之背景分离
    OpenCVPython系列之Shi—tomasi拐角检测器
  • 原文地址:https://www.cnblogs.com/kamil/p/5174976.html
Copyright © 2011-2022 走看看