鱼C论坛

 找回密码
 立即注册
查看: 1588|回复: 1

[技术交流] python综合笔记3,第10部分 - 文件

[复制链接]
发表于 2017-8-9 23:39:27 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
                                                                     10 - 文件
windos是以扩展名指出文件类型,打开文件用函数open(),详细如下:

open(file,mode ='r',buffers = -1,encoding = None,errors = None,newline = None,closefd = True,opener = None)
打开文件并返回流。失败时提高IOError。

file是给出名称(和路径)的文本或字节字符串
如果文件不在当前工作目录中)的文件被打开或文件的整数文件描述符包裹。 (如果给出了一个文件描述符,那么当它被关闭返回的I / O对象是关闭的,除非closefd设置为False。)

mode是一个可选的字符串,用于指定文件的模式开了它默认为'r',这意味着在文本中阅读
模式。

其他常见的值为'w'用于写入(截断文件,如果
它已经存在),'x'用于创建和写入新的文件,以及
'a'用于附加(在某些Unix系统上,意味着所有的写入
附加到文件的末尾,而不管当前的查找位置如何)。
在文本模式下,如果未指定编码,则使用的编码是平台
依赖:locale.getpreferredencoding(False)被调用来获取
当前区域设置编码。 (用于读和写原始字节使用二进制
模式和离开编码未指定。)可用模式为:

========= ======================================= ======================


长期使用Windows操作系统的朋友很容易被扩展名所误导,认为扩展名决定文件类型,其实这种观念是错误的!

其实这就跟一个姓张的坏人,尽管把名字改为了“张好人”,但他还是一个坏人是一个道理的^_^

关于文件的扩展名,初学者容易走进的误区:

误区一:文件扩展名是一个文件的必要构成部分

一个文件可以有或没有扩展名,对于打开文件操作,没有扩展名的文件需要选择程序去打开它,有扩展名的文件会自动用设置好的程序(如有)去尝试打开(是“尝试打开”,而不是“打开”的原因参看下面的第2个误区),文件扩展名是一个常规文件的构成部分,但一个文件并不一定需要一个扩展名。

误区二:文件扩展名表明了该文件是何种类型

文件扩展名可以人为设定,扩展名为TXT的文件有可能是一张图片,同样,扩展名为M-P3的文件,依然可能是一个视频。


                                             字符含义
--------- ----------------------------------------- ----------------------
'r'开放阅读(默认)
'w'打开写入,首先截断文件(会覆盖上一次的内容)
'x'创建一个新文件并将其打开以进行写入
'a'开放写作,如果文件存在,则附加到文件末尾
'b'二进制模式
't'文本模式(默认)
'+'打开一个磁盘文件进行更新(读写)(可添加到其他模式中使用)
'U'通用换行模式(弃用)
========= ======================================= ===
f.close() 关闭文件(可别忘了!)
f.read(),从文件中读取size个字符(读取到的位置就是'书签'的位置)
f.seek(offset,from) 移动‘书签’从from(0表示起始位置,1表示当前位置,2表示文件末尾)移动offset个字节。(附件回复可见
游客,如果您要查看本帖隐藏内容请回复

评分

参与人数 1鱼币 +3 收起 理由
小甲鱼 + 3

查看全部评分

本帖被以下淘专辑推荐:

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2017-8-9 23:50:35 From FishC Mobile | 显示全部楼层
代码部分(比如open的括号,里面的逗号等)最好用英文,不然复制过去不能直接用的。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-9-28 06:23

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表