您的位置:首页 > 编程语言 > Python开发

Python基础--基本文件操作

2016-03-25 23:57 597 查看
所有的编程语言都一样,学完了一些自带的数据机构后,就要操作文件了。

文件操作才是实战中的王道。

所以,今天就来分享一下Python中关于文件的一些基本操作。

open方法

文件模式

这个模式对于写入文件很重要。

r   读模式
w   写模式
a   追加模式
b   二进制模式
+   读写模式


缓冲

open函数的第三个参数

0             I/O无缓冲
1             I/O有缓冲
大于1          缓冲大小,字节为单位
-1            使用默认缓冲区大小


读和写

f = open('somefile.txt', 'w')
f.write('Hello. ')
f.write('World!')
f.close()


完成对文件的操作,记得要close。

f = open('somefile.txt', 'r')
f.read(4)
'Hell'
f.read()
'o, World!'


莞式输出(管式输出)

例子,统计单词数目:

import sys
text = sys.stdin.read()
words = text.split()
wordcount = len(words)
print 'Wordcount:', wordcount


最后介绍一下,什么是二进制文件:

定义

广义的二进制文件即指文件,由文件在外部设备的存放形式为二进制而得名。狭义的二进制文件即除文本文件以外的文件。文本文件是一种由很多行字符构成的计算机文件。文本文件存在于计算机系统中,通常在文本文件最后一行放置文件结束标志。文本文件的编码基于字符定长,译码相对要容易一些;二进制文件编码是变长的,灵活利用率要高,而译码要难一些,不同的二进制文件译码方式是不同的。

从本质上来说他们之间没有什么区别,因为他们在硬盘上都有一种的存放方式–二进制,但是如果要对他们有些区分的话,那可以这样理解。每个字符由一个或多个字节组成,每个字节都是用的-128—127之间的部分数值来表示的,也就是说,-128——127之间还有一些数据没有对应任何字符的任何字节。如果一个文件中的每个字节的内容都是可以表示成字符的数据,我们就可以称这个文件为文本文件,可见,文本文件只是二进制文件中的一种特例,为了与文本文件相区别,人们又把除了文本文件以外的文件称为二进制文件,由于很难严格区分文本文件和二进制文件的概念,所以我们可以简单地认为,如果一个文件专门用于存储文本字符的数据,没有包含字符以外的其他数据,我们就称之为文本文件,除此之外的文件就是二进制文件。

为什么要使用二进制文件。原因大概有三个:

  第一是二进制文件比较节约空间,这两者储存字符型数据时并没有差别。但是在储存数字,特别是实型数字时,二进制更节省空间,比如储存 Real*4 的数据:3.1415927,文本文件需要 9 个字节,分别储存:3 . 1 4 1 5 9 2 7 这 9 个 ASCII 值,而二进制文件只需要 4 个字节(DB 0F 49 40)

  第二个原因是,内存中参加计算的数据都是用二进制无格式储存起来的,因此,使用二进制储存到文件就更快捷。如果储存为文本文件,则需要一个转换的过程。在数据量很大的时候,两者就会有明显的速度差别了。

  第三,就是一些比较精确的数据,使用二进制储存不会造成有效位的丢失
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: