• file()创建文件方法 分类: python python基础学习 20121224 18:17 239人阅读 评论(0) 收藏


    #创建文件方法一
    filename='filename.txt' #先创建文件路径、名称
    f=file(filename,'w')
    f.close()

    #创建文件方法二:直接输入文件路径、名称


    #注意此处的new文件,要注意和\n转义字符冲突。
    #建议路径用r'D:\new.txt'
    f1=file('D:\poems.txt','w');#在
    f2=file(r'D:\new.txt','w')   #注意此处的r
    f2.close()

    f1.close()


    如果文件不存在,且模式是‘aw、或w+时,python会在python文件目录下自动创建该txt文件;文件不存在,且模式是r’,或‘r+’时,会出现io错误


    以‘a' 模式打开文件对象,然后使用文件对象的write方法写入数据,如果追加内容没有明确写入'\n',则在文件对象末尾直接追加write方法中的内容,不另起一行。除非明确写入回车符。


    WindowsMacintosh平台上,‘b’模式以二进制方式打开文件,所以可能会有类似于‘rb’,‘wb’,‘r+b’等等模式组合。Windows平台上文本文件与二进制文件是有区别的,读写文本文件时,行尾会自动添加行结束符。这种后台操作方式对文本文件没有什么问题,但是操作JPEGEXE这样的二进制文件时就会产生破坏。在操作这些文件时一定要记得以二进制模式打开。(需要注意的是Mactiontosh平台上的文本模式依赖于其使用的底层C库)



    1. f2= open(r'E:\python\day2\test.txt','r+')
    2. f2.write("python")
    3.
    4. print f2.read()
    5. f2.close()
     
    执行步骤2后,指针指向字符串结尾e的下一位。
    执行4时,不输出任何内容。
     
    如果要输出写入的内容,在第三行添加 f2.seek(0)即可
     

    获取文件大小:

    1. 1.
    2. >>> f = open('chardet-1.0.1.tgz','rb')
    3. >>> f.seek(0,2)
    4. >>> f.tell()
    5. 179218L


    6. 2.
    7. >>> import os
    8. >>> os.fstat(f.fileno()).st_size
    9. 179218L


    f.flush() 清除内部缓冲区,将缓冲区内的数据写入文件。然后可以读取文件内容。


    理解seek()

    Userinfo.txt的内容:insert into USERINFO_ (注:后面有个空格,下划线的索引是20

    import os

    f =open('userinfo.txt')

    f.seek(-2,2)

    print f.tell()  # 20

    print f.read(1)# 结果:_

    print f.tell()   # 21

    版权声明:本文为博主原创文章,未经博主允许不得转载。

  • 相关阅读:
    django orm 以列表作为筛选条件进行查询
    申请Let's Encrypt通配符HTTPS证书
    redis集群部署及踩过的坑
    MySQL的索引是什么?怎么优化?
    Session管理之超时设置和强制下线
    在MySQL中使用explain查询SQL的执行计划
    基于Docker搭建MySQL主从复制
    这些年一直记不住的 Java I/O
    高并发大容量NoSQL解决方案探索
    php 如何生成静态页
  • 原文地址:https://www.cnblogs.com/think1988/p/4628258.html
Copyright © 2020-2023  润新知