当前位置: 首页 > 后端技术 > Python

Python学习:文件操作与os方法

时间:2023-03-26 15:53:16 Python

1.File(文件)方法文件对象是使用open函数创建的,下表列出了文件对象的常用函数:序号方法说明1file.close()关闭文件。关闭后,文件就不能再读写了。2file.flush()刷新文件内部缓冲区,直接将内部缓冲区中的数据立即写入文件,而不是被动等待输出缓冲区写入。3file.fileno()返回一个整型文件描述符(filedescriptorfdinteger),可以用在一些底层操作比如os模块的read方法中。4file.isatty()如果文件连接到终端设备则返回True,否则返回False。5file.next()返回文件的下一行。6[file.read(size])从文件中读取指定数量的字节,如果未给定或为负,则读取全部。7[file.readline(size])读取整行,包括“\n”字符。8[file.readlines(sizehint])读取所有行并返回一个列表。如果给定sizeint>0,它返回总和约为sizeint字节的行。实际读取的值可能比sizeint大,因为需要填充缓冲区。9[file.seek(offset,whence])设置文件的当前位置10file.tell()返回文件的当前位置。11[file.truncate(size])截取文件,截取的字节由size指定,默认为当前文件位置。12file.write(str)将字符串写入文件,并返回写入字符的长度。13file.writelines(sequence)向文件写入一个序列字符串列表,如果需要换行,需要自己为每一行添加一个换行符。2.OS模块文件/目录方法os模块提供了非常丰富的处理文件和目录的方法。常用方法如下表:序号方法说明1os.access(path,mode)检查权限模式2os.chdir(path)改变当前工作目录3os.chflags(path,flags)设置路径标志到数字标志。4os.chmod(path,mode)改变权限5os.chown(path,uid,gid)改变文件所有者6os.chroot(path)改变当前进程的根目录7os.close(fd)关闭文件描述符fd8os。closerange(fd_low,fd_high)关闭fd_low(含)到fd_high(不含)的所有文件描述符,忽略错误9os.dup(fd)复制一个文件描述符fd10os.dup2(fd,fd2)复制一个文件描述符fd到另一个fd211os.fchdir(fd)通过文件描述符改变当前工作目录12os.fchmod(fd,mode)改变一个文件的访问权限,该文件由参数fd指定,参数mode为下的文件访问权限Unix。13os.fchown(fd,uid,gid)修改文件的所有权。该函数修改由文件描述符fd指定的文件的用户ID和用户组ID。14os.fdatasync(fd)强制将文件写入磁盘,由文件描述符fd指定,但不强制更新文件的状态信息。15[os.fdopen(fd,mode[,bufsize]])通过文件描述符fd创建一个文件对象,并返回文件对象16os.fpathconf(fd,name)返回一个打开文件的系统配置信息。name是检索到的系统配置值,可以是定义系统值的字符串,这些名称在许多标准(POSIX.1、Unix95、Unix98等)中指定。17os.fstat(fd)返回文件描述符fd的状态,类似于stat()。18os.fstatvfs(fd)返回包含文件描述符fd的文件的文件系统信息,像statvfs()19os.fsync(fd)强制将文件描述符fd的文件写入硬盘。20os.ftruncate(fd,length)切割文件描述符fd对应的文件,所以不能超过最大文件大小。21os.getcwd()返回当前工作目录22os.getcwdu()返回当前工作目录的Unicode对象23os.isatty(fd)如果文件描述符fd已打开并连接到tty(-like)设备,则返回true,否则为假。24os.lchflags(path,flags)设置路径的标志为数字标志,类似chflags(),但是没有软链接25os.lchmod(path,mode)修改连接文件权限26os.lchown(path,uid,gid)更改所有文件或者,像chown,但不跟随链接。27os.link(src,dst)创建一个硬链接,命名参数dst,指向参数src28os.listdir(path)返回path指定的文件夹中包含的文件或文件夹的名称列表。29os.lseek(fd,pos,how)设置文件描述符fd的当前位置为pos,通过how修改:SEEK_SET或0设置从文件开头算出的pos;SEEK_CUR或1从当前位置开始计算;os.SEEK_END或2它从文件末尾开始。它在unix和Windows中有效30os.lstat(path)类似于stat(),但没有软链接31os.major(device)从原始设备号中提取设备主编号(在stat或st_rdev字段中使用st_dev).32os.makedev(major,minor)与主设备号和次设备号形成原始设备号33[os.makedirs(path,mode])递归文件夹创建函数。与mkdir()类似,但会创建所有需要包含子文件夹的中级文件夹。34os.minor(device)从原始设备号中提取次设备号(使用stat中的st_dev或st_rdev字段)。35[os.mkdir(path,mode])以数字模式创建一个名为path的文件夹。默认模式是0777(八进制)。36[os.mkfifo(path,mode])创建一个命名管道,mode是一个数字,默认为0666(八进制)37[os.mknod(filename,mode=0600,device])创建一个namedfilename文件系统节点(文件、设备专用文件或命名管道)。38[os.open(file,flags,mode])打开一个文件并设置需要的打开选项,mode参数是可选的39os.openpty()打开一个新的伪终端对。返回pty和tty的文件描述符。40os.pathconf(path,name)返回相关文件的系统配置信息。41os.pipe()创建一个管道。返回一对文件描述符(r,w)分别用于读取和写入42[os.popen(command,mode[,bufsize]])从命令打开管道43os.read(fd,n)最多读取n个字节从文件描述符fd返回一个包含读取字节的字符串。文件描述符fd对应于文件的末尾并返回一个空字符串。44os.readlink(path)返回软链接指向的文件45os.remove(path)删除路径为path的文件。如果path是一个目录,将抛出OSError;请参阅下面的rmdir()来删除目录。46os.removedirs(path)递归删除目录。47os.rename(src,dst)将文件或目录从src重命名为dst48os.renames(old,new)递归重命名目录,也可以重命名文件。49os.rmdir(path)删除path指定的空目录。如果目录不为空,则抛出OSError异常。50os.stat(path)获取path指定路径的信息,其作用相当于CAPI中的stat()系统调用。51[os.stat_float_times(newvalue])判断stat_result是否将时间戳显示为float对象52os.statvfs(path)获取指定路径的文件系统统计信息53os.symlink(src,dst)创建软链接54os.tcgetpgrp(fd)Returnstheprocessgroupassociatedwithterminalfd(anopenfiledescriptorreturnedbyos.open())55os.tcsetpgrp(fd,pg)setsthecharacter)关联的进程组为pg。56[os.tempnam(dir[,prefix]])返回用于创建临时文件的唯一路径名。57os.tmpfile()返回一个模式为(w+b)的打开文件对象。此文件对象没有文件夹条目,没有文件描述符,将被自动删除。58os.tmpnam()返回用于创建临时文件的唯一路径59os.ttyname(fd)返回表示与文件描述符fd关联的终端设备的字符串。如果fd未与终端设备关联,则引发异常。60os.unlink(path)删除文件路径61os.utime(path,times)返回指定路径文件的访问和修改时间。62[os.walk(top,topdown=True[,onerror=None[,followlinks=False]]])通过在树中向上或向下行走来输出文件夹中的文件名。63os.write(fd,str)将一个字符串写入文件描述符fd。返回实际写入的字符串的长度