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

    规则:open(file_name[,access_mode][,buffering])

      参数说明

      file_name:、文件路径+文件名称,加路径从路径开始访问,不加路径直接访问的是与你编辑的py文件在同一目录下的文件
      access_mode:打开文件的方式:默认为只读模式,r
        其他打开文件的方式:

        'r':只读

        'w':写

        'a':追加

        'r+' == r+w : 可读可写,主要为读,若文件不存在会出现保存

        'w+' == w+r :可读可写,主要为写,文件若不存在就创建一个文件

        'a+' ==a+r :可追加可写,文件若不存在就创建

        如果为二进制文件,则在后面加个b,例如:wb

    对文件操作时要注意编码格式,不然会出现乱码。默认格式为utf-8

     1 # --*-- coding:UTF-8 --*--
     2 
     3 # 打开文件并读取文件
     4 f = open(r'file.text')
     5 print(f.read())
     6 f.close()
     7 # 结果:你发顺丰发撒疯 是发撒疯 发
     8 # open 打开, read为读取文件内容, close为关闭文件
     9 
    10 
    11 # 打开一个不存在的文件
    12 # f = open(r'/User/xxx/s.text')
    13 # 结果:FileNotFoundError: [Errno 2] No such file or directory: '/User/xxx/s.text'
    14 
    15 
    16 # 如果直接打开文件的话必须要关闭文件,写的时候不关闭会写不进去内容的
    17 # 用with open的时候直接使用,就不需要关闭文件了
    18 with open(r'file.text') as fp:
    19     print(fp.read())
    20 # 结果:你发顺丰发撒疯 是发撒疯 发
    21 # fp是将文件缩写,以fp代替文件
    22 
    23 
    24 '''
    25 读取文本的三种方法:
    26     read:读取文本的所有内容
    27     readline:读取文章的一行
    28     readlines() 自动将文件内容分析成一个行的列表读取
    29 '''
    30 
    31 
    32 
    33 # 写文件
    34 with open('learning.txt', 'w') as fp:
    35     fp.write('Hello, world!')
    36 # 结果:自动新建一个learning.txt的文件,并且存入内容hello ,world!
    37 
    38 '''
    39 写入文本的两种方法:
    40     write():将内容写入文本中
    41     writelines():针对列表的操作
    42 '''
    43 
    44 
    45 # 举例说明readlines和writelines
    46 with open('text.txt','w') as fp:
    47     fp.writelines(['123
    ', '234
    ', '345
    ', '456
    ',])
    48 # 结果:
    49     '''
    50     123
    51     234
    52     345
    53     456
    54     '''
    55 
    56 with open('text.txt','r') as fp:
    57     print(fp.readlines())
    58 #  结果:['123
    ', '234
    ', '345
    ', '456
    ']
    59 
    60 
    61 # 文本后面追加内容用a模式,不然就直接覆盖了之前的内容
    62 with open('learning.txt', 'a') as fp:
    63     fp.write('
    Hello, world!')
    64 # 结果:
    65 '''
    66 Hello, world!
    67 Hello, world!
    68 '''
  • 相关阅读:
    idea 管理java 多module的工程
    协程与函数线程异步的关系
    HDU 5640 King's Cake【模拟】
    逻辑运算
    Silverlight 学习笔记——布局 Evil 域 博客园
    ExtJS 日期格式问题
    偏方收藏(此信息为本人收藏,安全性无法验证,使用后产生的一些后果自负)
    form和column:extJS的布局
    Sqlserver 通用存储过程分页
    Ext中TreePanel控件和TabPanel控件搭配测试
  • 原文地址:https://www.cnblogs.com/tynam/p/8744395.html
Copyright © 2011-2022 走看看