windows默认是gbk编码,又称cp936,汉字占2个字节。

utf-8被称为万国码,这个编码下,汉字占3个字节。

ASCII也是一种编码。

一、文件操作

最基本的文件打开:

f = open("a.txt","w")
# f 文件流、输入输出流
# "r"模式,没有该文件会报错
# "w"模式,会清空之前的内容,无文件会新建

(一).文件的打开模式:

r 只读模式,文件不存在时会报错。

w 写入模式,文件存在会清空之前的内容,文件不存在则会新建文件。

x 写入模式,文件存在会报错,文件不存在则会新建文件。

a 追加写入模式,不会清空之前的内容,直接将写入的内容添加到后面。

b 以二进制模式读写文件,wb rb ab。

+ 可读写模式,r+ w+ x+ a+,这几种模式还遵循了r w x a的基本原则。

(二).文件的读取:

f.read() 全部读出来。读完后,光标在文件最后了,再运行一次因为后面没有数据了(空值了)就会返回空值。

f.readline() 只读一行,读完后光标停在读到的那一行最后。

f.readlines() 全部读取,将每一行作为list中的元素包装进list,返回list

小技巧:len(f.redlines())可以看出有几行。

(三).文件的写入:(注:写入如需换行需要自己把"\n"写进去)

f.write() 把内容以字符串的形式通过write()方法写入文件中。

需要紧接f.flush()方法,因为文件是运行在内存中,需要冲刷一下,才会从缓存写入磁盘。类似于“保存”。

f.writelines()小括号中需要是列表,列表中的内容由字符串元素组成。如:f.writelines(["111","222"])

(四).文件关闭:f.close()

(五).查看信息:(不是方法啊!是属性!)

f.closed 返回一个布尔值,查看文件是否已关闭。

f.mode 返回文件打开的模式。

f.name 返回文件名。

(六).光标位置:

f.seek(0,0) 第一个参数:偏移量,往后偏移。第二个参数:起始位置。(注意光标的位置)

f.tell() 返回光标的位置。

(七).with open:

用with open方式打开的文件,里面的语句执行完后会自动关闭文件。无需写flush()了。

with open("a.txt", "a") as f:
f.read()

二、异常

一旦遇到报错(异常),程序就崩溃终止了,用户体验相当不好。所以,捕获异常非常必要,把可能会报错的代码,包装到 try...except 块中。

尽量避免写BaseException,所有异常的祖宗。

else:正常结束才执行。

finally:无论如何都会执行,必定会执行。比如:操作一个文件输入输出时出错了,弹药保护已有的内容,就把关不语句放进finally块中。finally块中一般不写逻辑语句。

raise:自己手动抛出异常。

python3的官方帮助文档可以查看内建异常:

Python 文件操作、异常的更多相关文章

  1. 第十二章 Python文件操作【转】

    12.1 open() open()函数作用是打开文件,返回一个文件对象. 用法格式:open(name[, mode[, buffering[,encoding]]]) -> file obj ...

  2. 第九章 Python文件操作

    前一阵子写类相关的内容,把老猿写得心都累了,本来准备继续介绍一些类相关的知识的,如闭包.装饰器.描述符.枚举类.异常等,现在实在不想继续,以后再开章节吧.本章弄点开胃的小菜提提神,介绍Python中文 ...

  3. Python基础篇【第2篇】: Python文件操作

    Python文件操作 在Python中一个文件,就是一个操作对象,通过不同属性即可对文件进行各种操作.Python中提供了许多的内置函数和方法能够对文件进行基本操作. Python对文件的操作概括来说 ...

  4. [Python学习笔记][第七章Python文件操作]

    2016/1/30学习内容 第七章 Python文件操作 文本文件 文本文件存储的是常规字符串,通常每行以换行符'\n'结尾. 二进制文件 二进制文件把对象内容以字节串(bytes)进行存储,无法用笔 ...

  5. Python文件操作与函数目录

    文件操作 python文件操作 函数 Python函数学习——初步认识 Python函数学习——作用域与嵌套函数 Python函数学习——匿名函数 python内置函数 Python函数学习——递归 ...

  6. 初学Python——文件操作第二篇

    前言:为什么需要第二篇文件操作?因为第一篇的知识根本不足以支撑基本的需求.下面来一一分析. 一.Python文件操作的特点 首先来类比一下,作为高级编程语言的始祖,C语言如何对文件进行操作? 字符(串 ...

  7. day8.python文件操作

    打开和关闭文件 open函数 用Python内置的open()函数打开一个文件,创建一个file对象,相关的方法才可以调用它进行读写. file = open(file_name [, access_ ...

  8. 关于python 文件操作os.fdopen(), os.close(), tempfile.mkstemp()

    嗯.最近在弄的东西也跟这个有关系,由于c基础渣渣.现在基本上都忘记得差不多的情况下,是需要花点功夫才能弄明白. 每个语言都有相关的文件操作. 今天在flask 的例子里看到这样一句话.拉开了文件操作折 ...

  9. Python之路Python文件操作

    Python之路Python文件操作 一.文件的操作 文件句柄 = open('文件路径+文件名', '模式') 例子 f = open("test.txt","r&qu ...

  10. python 文件操作 r w a

    python基础-文件操作   一.文件操作 对文件操作的流程 打开文件,得到文件句柄并赋值给一个变量 通过句柄对文件进行操作 关闭文件       打开文件时,需要指定文件路径和以何等方式打开文件, ...

随机推荐

  1. jquery.cookie.js操作cookie实现“记住密码”,很简单很强大

    //初始化页面时验证是否记住了密码 $(document).ready(function() { if ($.cookie("rmbUser") == "true&quo ...

  2. [转]SQL Server 性能调优(内存)

      存储引擎自调整 sql server 是如何分配内存的 32bit地址空间的限制 用户模式vas分配和virtualalloc 非boffer pool 分配内存(保留内存) VAS调整 AWE ...

  3. oracle常用函数使用大全 Oracle除法(转)

    http://blog.csdn.net/chenmeng2192089/article/details/9155625 一.运算符算术运算符:+ - * / 可以在select 语句中使用连接运算符 ...

  4. 【C#系列】你应该知道的委托和事件

    [C#系列]你应该知道的委托和事件   本篇文章更适合具有一定开发经验,一定功底,且对底层代码有所研究的朋友!!! 本篇文章主要采用理论和代码实例相结合方式来论述委托和事件,涉及到一些边界技术,如软件 ...

  5. C语言学习笔记(三) 输入输出函数的基本用法以及运算符

    printf() ——将内容输出到显示器上 四种用法 1.printf("字符串");   直接输出字符串 2.printf("输出控制符",输出参数); 3. ...

  6. TIME_WAIT状态及存在原因

    1. 客户端与服务器端建立TCP/IP连接后关闭SOCKET后,服务器端连接的端口状态为TIME_WAIT: 2. 主动关闭的Socket端会进入TIME_WAIT状态,并且持续2MSL时间长度,MS ...

  7. php中的匿名函数的注意事项

    在php5.3以后,php加入匿名函数的使用,今天在使用匿名的时候出现错误,不能想php函数那样声明和使用,详细看代码 $callback=function(){ return "aa&qu ...

  8. TortoiseSVN客户端使用方法

    SVN对于程序开发来说是非常重要的东西,它是非常不错的版本管理工具,下面介绍一下TortoiseSVN客户端的使用方法. 工具/原料 TortoiseSVN 方法/步骤   如果没有TortoiseS ...

  9. [转]MVC设计模式

    MVC模式(Model-View-Controller)是软件工程中的一种软件架构模式,把软件系统分为三个基本部分:模型(Model).视图(View)和控制器(Controller). MVC模式最 ...

  10. 机器人的运动范围 剑指offer66题

    include "stdafx.h" #include<vector> #include<algorithm> #include<string> ...