#!/usr/bin/python # -*- coding: UTF-8 -*- import os # 导入 Phone 包 #File 对象方法: file对象提供了操作文件的一系列方法。 #OS 对象方法: 提供了处理文件及目录的一系列方法。 fo = open("useUser.py", "r+")
fo.write("写入的数据"); str = fo.read(10); print "读取的字符串是 : ", str # 查找当前位置 position = fo.tell(); print "当前文件位置 : ", position # 把指针再次重新定位到文件开头 position = fo.seek(10, 0); str = fo.read(10); print "重新读取字符串 : ", str # 关闭打开的文件 fo.close() os.rename("useUser.py","fileIo.py") # 删除文件os.remove() #rmdir()方法删除目录,删除这个目录之前,它的所有内容应该先被清除os.rmdir('dirname') #os模块的mkdir()方法在当前目录下创建新的目录 #os.mkdir("test") #chdir()方法来改变当前的目录 # 将当前目录改为"/home/newdir" #os.chdir("/home/newdir") #显示当前的工作目录print os.getcwd()
一、File对象属性
file.closed 返回true如果文件已被关闭,否则返回false。 file.mode 返回被打开文件的访问模式。 file.name 返回文件的名称。 file.softspace 如果用print输出后,必须跟一个空格符,则返回false。否则返回true。
二、open()函数打开一个文件,
1、语法:
file object = open(file_name [, access_mode][, buffering])
2、, access_mode-->打开文件的模式如下:
r 以只读方式打开文件。文件的指针将会放在文件的开头。这是默认模式。 rb 以二进制格式打开一个文件用于只读。文件指针将会放在文件的开头。这是默认模式。 r+ 打开一个文件用于读写。文件指针将会放在文件的开头。 rb+ 以二进制格式打开一个文件用于读写。文件指针将会放在文件的开头。 w 打开一个文件只用于写入。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。 wb 以二进制格式打开一个文件只用于写入。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。 w+ 打开一个文件用于读写。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。 wb+ 以二进制格式打开一个文件用于读写。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。 a 打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。 ab 以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。 a+ 打开一个文件用于读写。如果该文件已存在,文件指针将会放在文件的结尾。文件打开时会是追加模式。如果该文件不存在,创建新文件用于读写。 ab+ 以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。如果该文件不存在,创建新文件用于读写。
三、文件常用函数
1、file.close() 关闭文件。关闭后文件不能再进行读写操作。 2、file.flush() 刷新文件内部缓冲,直接把内部缓冲区的数据立刻写入文件, 而不是被动的等待输出缓冲区写入。 3、file.fileno() 返回一个整型的文件描述符(file descriptor FD 整型), 可以用在如os模块的read方法等一些底层操作上。 4、file.isatty() 如果文件连接到一个终端设备返回 True,否则返回 False。 5、file.next() 返回文件下一行。 6、file.read([size]) 从文件读取指定的字节数,如果未给定或为负则读取所有。 7、file.readline([size]) 读取整行,包括 " " 字符。 8、file.readlines([sizehint]) 读取所有行并返回列表,若给定sizeint>0,返回总和大约为sizeint字节的行, 实际读取值可能比sizhint较大, 因为需要填充缓冲区。 9、file.seek(offset[, whence]) 设置文件当前位置 10、file.tell() 返回文件当前位置。 11、file.truncate([size]) 截取文件,截取的字节通过size指定,默认为当前文件位置。 12、file.write(str) 将字符串写入文件,没有返回值。 13、file.writelines(sequence) 向文件写入一个序列字符串列表,如果需要换行则要自己加入每行的换行符。