2007/04/24

python学习笔记(四) 文件对象

读文件: f=open("/test.txt","r")
第一个参考为要打开的文件名,第二个为文件打开方式
r为只读,不能做其他操作.
w为写模式,会把原文件overwrite
a为追加模式,会在原文件的末属加入要写入的内容
rb,以二字进方式只读打开
f.name 得到文件名
f.mode 得到当前文件的打开方式
f.tell() 得到当前对象正操作文件的哪个位置
f.seek(length, start)移动文件中的操作位置,接收两参数,打开多少,从哪里打开
f.read() 可接收一个参数,返回指定长度内容,如查不写,则返回全部内容
f.closed 当前文件对象是否已关闭,返回False, or True



这里f被自动创建了一个文件对象,拥有文件对象的一些其他功能
f.read() 是读此文件,会打印出此文件的全部内容
print f

try:
f=open("test.txt","r")# 如果此文件不存在的话,会引发错误
except IOError:#这里的错误类型是可选的,这相当于多加了一个条件判断,如果不是IOError则不会执行此代码块的内容
f.close()
else:
...
这里还可以加一个判断,如果不是IOError错误,则执行else:下的代码块.

>>> import fileinfo
>>> print '\n'.join(sys.modules.keys())

在这里可以看到fileinfo已经被作为sys的一个modele存在了
这里比较含糊

一直对split的工作方式有些奇怪,不知道用什么特征来分割字符串的.

os.listdir(dirname)
返回给定目录下的所有内容,包括文件和目录,相当于DOS下的DIR?

列出所有文件:需要做个判断,isfile
>>> [f for f in os.listdir(dirname)
... if os.path.isfile(os.path.join(dirname, f))]

列出所有目录
>>> [f for f in os.listdir(dirname)
... if os.path.isdir(os.path.join(dirname, f))]

>>> import glob
>>> glob.glob('c:\\music\\_singles\\*.mp3')
找出当前目录下的所有MP3文件,这个好用


----
睡觉去.

没有评论: