Python中以sys.open()方法打开文件

 import sys

 file = open("D:\\file.txt")

其中可在第二个参数的位置指定打开文件的模式

 import sys

 file = open("D:\\file.txt", "r")

参数共有以下几种:

rU或Ua 以读方式打开,同时提供通用换行符支持(PEP278)
wb 以写方式打开,
a 以追加模式打开(从EOF开始,必要时创建新文件)
r+ 以读写模式打开
w+ 以读写模式打开(参见w)
a+ 以读写模式打开(参见a)
rb 以二进制读模式打开
wb 以二进制写模式打开(参见w)
ab 以二进制追加模式打开(参见a)
rb+ 以二进制读写模式打开(参见r+)
wb+ 以二进制读写模式打开(参见w+)
ab+ 以二进制读写模式打开(参见a+)

下面对一些常用模式(r+, w+, a+)稍作测试:

r+:

在对应文件不存在时:

 file = open("D:\\file.txt", "r+")

导致IO错误

IOError: [Errno 2] No such file or directory: 'D:\\file.txt'

在对应文件存在时:

 import sys

 sys.stdout = open("D:\\file.txt", "r+")
print "this is second line"

将导致原文件内容被擦除,变为:

this is second line

w+:

在对应文件不存在时:

 import sys

 sys.stdout = open("D:\\file.txt", "w+")
print "this is second line"

将创建新文件file.txt并写入内容

在对应文件存在时:

上述代码将导致原文件内容被擦除,变为:

this is second line

a+:

在对应文件不存在时:

1 import sys
2
3 sys.stdout = open("D:\\file.txt", "a+")
4 print "this is second line"

将创建新文件file.txt并写入内容

在对应文件存在时:

上述代码将会把内容写入文件末尾,文件内容变为:

this is first line
this is second line

综上,各模式功能总结如下:

  创建文件 覆盖 or 添加
r+ 覆盖
w+ 覆盖
a+ 添加

[Python]打开文件的模式的更多相关文章

  1. python打开文件的模式

    r打开只读文件,该文件必须存在. r+打开可读写的文件,该文件必须存在. w打开只写文件,若文件存在则文件长度清为0,即该文件内容会消失.若文件不存在则建立该文件. w+打开可读写文件,若文件存在则文 ...

  2. Python小白学习之路(二十)—【打开文件的模式二】【文件的其他操作】

    打开文件的模式(二) 对于非文本文件,我们只能使用b模式,"b"表示以字节的方式操作(而所有文件也都是以字节的形式存储的,使用这种模式无需考虑文本文件的字符编码.图片文件的jgp格 ...

  3. python打开文件可以有多种模式

    一.python打开文件可以有多种模式,读模式.写模式.追加模式,同时读写的模式等等,这里主要介绍同时进行读写的模式r+ python通过open方法打开文件 file_handler = open( ...

  4. Python 打开文件(File Open)

    版权所有,未经许可,禁止转载 章节 Python 介绍 Python 开发环境搭建 Python 语法 Python 变量 Python 数值类型 Python 类型转换 Python 字符串(Str ...

  5. python打开文件的N种姿势

    # python打开文件的N种姿势 print('[1]使用open()函数+简单for循环') f1 = open('python.txt') for line in f1: print(line. ...

  6. 飘逸的python - 理解打开文件的模式

    当我们用open()函数去打开文件的时候,有好几种打开的模式.   'r'->只读 'w'->只写,文件已存在则清空,不存在则创建. 'a'->追加,写到文件末尾 'b'->二 ...

  7. python 打开文件基础 (笔记)

    1.打开文件:建立文件与程序的关联 open(filenname,mode) filenname:文件名(包括路径):mode :打开模式 模式 打开模式 含义 r 只读,文件不存在则报错 w 只写, ...

  8. Python打开文件open()的注意事项

    刚刚用open(fileName)来打开txt格式的文件,总是出现错误,总是找不到文件读取的内容,后来才发现是open()在使用过程中自动关闭了.这里介绍另种方法解决这个问题. 第一种方法. with ...

  9. python打开文件常见错误及解决办法

    打开文件注意事项: 打开文件时需要,填写正确的路径,需要配置与文件相同的编码方式打开位机例如’utf-8‘,需要以特定 的模式打开文件 r, w,r+,w+,rb,wb,a, a+,ab等模式 f.o ...

随机推荐

  1. Android异步请求

    class MyTask_SendMessage extends AsyncTask<String, Void, String> { @Override protected void on ...

  2. Linux下MySql启动时报错

    /opt/mysql/support-files/mysql.server startmy_print_defaults: [ERROR] Found option without preceding ...

  3. DTO学习系列之AutoMapper(二)

    本篇目录: Flattening-复杂到简单 Projection-简单到复杂 Configuration Validation-配置验证 Lists and Array-集合和数组 Nested m ...

  4. l连接远程桌面

    参考:http://www.windows7en.com/Win7/17168.html 重要命令:mstsc

  5. 自定义View—颜色

    一.颜色通道的意思 ARGB888.ARGB444.RGB565.Alpha8的区别 二.如何自定义颜色 ①.首先ARGB分别表示

  6. Python爬虫学习:一、相关概念与基础知识

    爬虫: 网络爬虫是一个自动提取网页的程序,它为搜索引擎从万维网上下载网页,是搜索引擎的重要组成.传统爬虫从一个或若干初始网页的URL开始,获得初始网页上的URL,在抓取网页的过程中,不断从当前页面上抽 ...

  7. DataTables在回调方法中使用api

    $(document).ready(function() { $('#example').dataTable( { "initComplete": function () { va ...

  8. Is there a complete List of JVM exit codes

    Argument passed to System.exit(x) -> becomes the JVM exit code. Exit code 0 is used to indicate n ...

  9. logstash date插件介绍

    时间处理(Date) 之前章节已经提过, filters/date 插件可以用来转换你的日志记录中的时间字符串,变成 LogStash::Timestamp 对象,然后转存到 @timestamp 字 ...

  10. myeclipse中控制台日志比实际晚8小时解决方法及java日志处理

    今天终于忍不住要解决myeclipse控制台中日志显示比实际晚8小时的问题,开始以为myeclipse编辑器时间问题,后来想想不对,myeclipse控制台打印的是tomcat的日志,随后以为是log ...