Python OS模块(常见文件操作示例)

合集下载

python,os操作文件,文件路径(上一级目录)

python,os操作文件,文件路径(上一级目录)

python,os操作⽂件,⽂件路径(上⼀级⽬录)python获取⽂件上⼀级⽬录:取⽂件所在⽬录的上⼀级⽬录os.path.abspath(os.path.join(os.path.dirname('settings.py'),os.path.pardir))os.path.pardir是⽗⽬录,os.path.abspath是绝对路径举例具体看⼀下输出:print os.path.dirname(os.path.abspath("__file__"))print os.path.pardirprint os.path.join(os.path.dirname("__file__"),os.path.pardir)print os.path.abspath(os.path.join(os.path.dirname("__file__"),os.path.pardir))输出结果:G:\work\python.. #这是两个点“..”,也就是上级⽬录的表⽰⽅法..G:\work获取⽂件当前路径: os.path.dirname(os.path.abspath('__file__'))python中对⽂件、⽂件夹(⽂件操作函数)的操作需要涉及到os模块和shutil模块。

得到当前⼯作⽬录,即当前Python脚本⼯作的⽬录路径: os.getcwd()返回指定⽬录下的所有⽂件和⽬录名:os.listdir()函数⽤来删除⼀个⽂件:os.remove()删除多个⽬录:os.removedirs(r“c:\python”)检验给出的路径是否是⼀个⽂件:os.path.isfile()检验给出的路径是否是⼀个⽬录:os.path.isdir()判断是否是绝对路径:os.path.isabs()检验给出的路径是否真地存:os.path.exists()返回⼀个路径的⽬录名和⽂件名:os.path.split() eg os.path.split('/home/swaroop/byte/code/poem.txt') 结果:('/home/swaroop/byte/code', 'poem.txt')分离扩展名:os.path.splitext()获取路径名:os.path.dirname()获取⽂件名:os.path.basename()运⾏shell命令: os.system()读取和设置环境变量:os.getenv() 与os.putenv()给出当前平台使⽤的⾏终⽌符:os.linesep Windows使⽤'\r\n',Linux使⽤'\n'⽽Mac使⽤'\r'指⽰你正在使⽤的平台: 对于Windows,它是'nt',⽽对于Linux/Unix⽤户,它是'posix'重命名:os.rename(old, new)创建多级⽬录:os.makedirs(r“c:\python\test”)创建单个⽬录:os.mkdir(“test”)获取⽂件属性:os.stat(file)修改⽂件权限与时间戳:os.chmod(file)终⽌当前进程:os.exit()获取⽂件⼤⼩:os.path.getsize(filename)⽬录操作:os.mkdir("file") 创建⽬录复制⽂件:shutil.copyfile("oldfile","newfile") oldfile和newfile都只能是⽂件shutil.copy("oldfile","newfile") oldfile只能是⽂件夹,newfile可以是⽂件,也可以是⽬标⽬录复制⽂件夹:shutil.copytree("olddir","newdir") olddir和newdir都只能是⽬录,且newdir必须不存在重命名⽂件(⽬录)os.rename("oldname","newname") ⽂件或⽬录都是使⽤这条命令移动⽂件(⽬录)shutil.move("oldpos","newpos")删除⽂件os.remove("file")删除⽬录os.rmdir("dir")只能删除空⽬录shutil.rmtree("dir") 空⽬录、有内容的⽬录都可以删转换⽬录os.chdir("path") 换路径pyhton⽂件操作函数:os.mknod("test.txt") 创建空⽂件fp = open("test.txt",w) 直接打开⼀个⽂件,如果⽂件不存在则创建⽂件关于open 模式:w 以写⽅式打开,a 以追加模式打开 (从 EOF 开始, 必要时创建新⽂件)r+ 以读写模式打开w+ 以读写模式打开 (参见 w )a+ 以读写模式打开 (参见 a )rb 以⼆进制读模式打开wb 以⼆进制写模式打开 (参见 w )ab 以⼆进制追加模式打开 (参见 a )rb+ 以⼆进制读写模式打开 (参见 r+ )wb+ 以⼆进制读写模式打开 (参见 w+ )ab+ 以⼆进制读写模式打开 (参见 a+ )fp.read([size]) #size为读取的长度,以byte为单位fp.readline([size]) #读⼀⾏,如果定义了size,有可能返回的只是⼀⾏的⼀部分fp.readlines([size]) #把⽂件每⼀⾏作为⼀个list的⼀个成员,并返回这个list。

os模块的十二种用法

os模块的十二种用法

os模块的十二种用法os模块是Python中常用的一个标准库模块,提供了许多与操作系统相关的功能。

下面我们一步一步来探讨os模块的十二种用法,了解它在Python 编程中的重要作用。

第一种用法:获取当前工作目录os模块提供了获取当前工作目录的方法,使用os.getcwd()函数可以获取当前脚本的工作目录。

我们可以通过以下代码来实现:import oscurrent_path = os.getcwd()print("当前工作目录:", current_path)运行程序,将会输出当前脚本的工作目录。

第二种用法:改变当前工作目录os模块提供了改变当前工作目录的方法,使用os.chdir()函数可以改变当前脚本的工作目录。

我们可以通过以下代码来实现:import osos.chdir("/path/to/new/directory")print("新的工作目录:", os.getcwd())运行程序,将会输出新的工作目录。

第三种用法:列出当前目录下的文件和文件夹os模块提供了列出当前目录下所有文件和文件夹的方法,使用os.listdir()函数可以获取当前目录下的所有文件和文件夹的列表。

我们可以通过以下代码来实现:import osfiles = os.listdir()print("当前目录下的文件和文件夹:", files)运行程序,将会输出当前目录下的所有文件和文件夹的列表。

第四种用法:创建目录os模块提供了创建目录的方法,使用os.mkdir()函数可以创建目录。

我们可以通过以下代码来实现:import osos.mkdir("/path/to/new/directory")print("目录创建成功")运行程序,将会创建一个新的目录。

第五种用法:删除目录os模块提供了删除目录的方法,使用os.rmdir()函数可以删除目录。

os模块的用法

os模块的用法

os 模块是 Python 中用于与操作系统进行交互的标准库模块,它提供了许多函数和方法来处理文件路径、目录等操作系统相关的功能。

下面是 os 模块的一些常用用法:1. **导入模块**```pythonimport os```2. **获取当前工作目录**```pythoncurrent_dir = os.getcwd()print(current_dir)```3. **改变当前工作目录**```pythonos.chdir('/path/to/directory')```4. **列出目录下的文件和子目录**```pythonfiles = os.listdir('/path/to/directory')for file in files:print(file)```5. **检查文件是否存在**```pythonif os.path.exists('/path/to/file'):print("文件存在")else:print("文件不存在")```6. **创建目录**```pythonos.mkdir('/path/to/directory')```7. **删除目录**```pythonos.rmdir('/path/to/directory')```8. **执行系统命令**```pythonos.system('command')```9. **拼接路径**```pythonpath = os.path.join('/path', 'to', 'directory')```10. **获取文件名和文件扩展名**```pythonfilename = os.path.basename('/path/to/file.txt') # 返回文件名extension = os.path.splitext('/path/to/file.txt')[1] # 返回扩展名```11. **获取文件大小**```pythonsize = os.path.getsize('/path/to/file')print(size)```12. **判断路径是否为文件或目录**```pythonif os.path.isfile('/path/to/file'):print("是文件")elif os.path.isdir('/path/to/directory'):print("是目录")```以上是 os 模块的一些常用用法,它提供了丰富的功能来处理文件和目录,以及与操作系统进行交互。

python中的os用法

python中的os用法

python中的os用法Python中的os模块是一个非常有用的模块,它提供了许多与操作系统交互的功能。

下面我们将介绍os模块的主要用法,包括文件和目录的创建、删除、复制、移动等操作,以及环境变量和当前工作目录的获取和设置。

一、os模块概述os模块是Python标准库中的一个重要组成部分,它提供了许多与操作系统交互的功能。

通过使用os模块,Python程序可以与文件系统、环境变量、当前工作目录等进行交互。

二、os模块的主要功能1. 文件和目录操作os模块提供了许多函数来操作文件和目录。

例如,os.mkdir()函数可以创建新的目录,os.rmdir()函数可以删除空目录,os.rename()函数可以重命名文件或目录。

此外,os.listdir()函数可以列出目录中的文件和子目录,os.stat()函数可以获取文件或目录的元数据信息。

2. 环境变量操作os模块提供了getenv()和putenv()函数来获取和设置环境变量。

getenv()函数可以获取指定环境变量的值,putenv()函数可以将环境变量设置为指定的值。

通过使用这些函数,Python程序可以与环境变量进行交互,以实现一些特殊的功能。

3. 当前工作目录操作os.getcwd()函数可以返回当前工作目录的路径名,os.chdir()函数可以将当前工作目录更改为指定的路径。

通过使用这些函数,Python程序可以轻松地在文件系统中导航。

三、os模块的使用示例下面是一个使用os模块的示例代码,用于演示文件和目录操作、环境变量操作以及当前工作目录的操作:```pythonimport os# 创建新目录os.mkdir("new_directory")# 列出目录中的文件和子目录print(os.listdir("new_directory"))# 删除空目录os.rmdir("new_directory")# 重命名文件或目录os.rename("old_file.txt", "new_file.txt")# 设置环境变量os.putenv("MY_ENV_VAR", "my_value")print(os.getenv("MY_ENV_VAR"))# 更改当前工作目录os.chdir("/path/to/new_directory")print(os.getcwd())```四、总结os模块是Python中一个非常有用的模块,它提供了许多与操作系统交互的功能。

os模块的 方法用来创建文件夹。

os模块的 方法用来创建文件夹。

OS模块是Python中的一个非常重要的模块,它提供了许多与操作系统交互的功能,其中包括创建文件夹的方法。

在本文中,我们将介绍OS模块中用于创建文件夹的方法,并讨论一些相关的注意事项。

1. 导入OS模块在使用OS模块的方法之前,我们首先需要导入OS模块。

在Python 中,可以使用以下语句来导入OS模块:import os2. 使用mkdir()方法创建文件夹在OS模块中,我们可以使用mkdir()方法来创建文件夹。

该方法的语法如下:os.mkdir(path)其中,path是要创建的文件夹的路径。

下面是一个简单的示例:import osos.mkdir("C:/example")在上面的示例中,我们使用os.mkdir()方法在C盘的根目录下创建了一个名为example的文件夹。

3. 使用makedirs()方法创建多层文件夹除了使用mkdir()方法创建单层文件夹外,OS模块还提供了makedirs()方法用于创建多层文件夹。

该方法的语法如下:os.makedirs(path)与mkdir()方法类似,path是要创建的文件夹的路径。

下面是一个示例:import osos.makedirs("C:/example/subfolder")在上面的示例中,我们使用os.makedirs()方法在C盘的根目录下创建了一个名为example的文件夹,并在该文件夹下创建了一个名为subfolder的子文件夹。

4. 注意事项在使用OS模块创建文件夹时,有一些注意事项需要我们注意:路径分隔符:在Windows操作系统中,路径分隔符是反斜杠(\),而在Unix和Linux操作系统中,路径分隔符是正斜杠(/)。

在编写跨评台的代码时,我们应该使用os.path.join()方法来拼接路径,而不是直接使用路径分隔符。

权限问题:在某些操作系统中,创建文件夹可能会受到权限的限制。

python利用os模块编写文件复制功能——copy函数用法

python利用os模块编写文件复制功能——copy函数用法

python利用os模块编写文件复制功能——copy函数用法在Python中,可以使用`os`模块的`copy(`函数来实现文件的复制功能。

`copy(`函数用于将一个文件复制到指定位置,可以是相同目录下的新文件名,也可以是其他目录下的文件路径。

`copy(`函数的语法如下:```pythonos.copy(src, dst)```其中,`src`是要复制的源文件的路径,`dst`是目标文件的路径。

下面是一个使用`copy(`函数实现文件复制的示例代码:```pythonimport osdef copy_file(src, dst):try:# 使用os.path.basename(函数获取源文件名file_name = os.path.basename(src)# 使用os.path.join(函数将目标文件名与目标路径拼接起来dst_file = os.path.join(dst, file_name)# 使用os.copy(函数进行文件复制os.copy(src, dst_file)print("文件复制成功!")except Exception as e:print("文件复制失败:", str(e))#源文件路径src_file = "/path/to/source/file.txt"#目标文件夹路径dst_folder = "/path/to/destination/folder"# 调用copy_file(函数进行文件复制copy_file(src_file, dst_folder)```在上述代码中,`copy_file(`函数接收源文件的路径和目标文件夹的路径作为参数。

首先,使用`os.path.basename(`函数获取源文件的文件名,然后使用`os.path.join(`函数将目标文件名与目标路径拼接起来,得到目标文件的路径。

python文件处理例子

python文件处理例子

python文件处理例子文件处理是编程中常见的任务之一,Python提供了强大的文件处理能力,可以读取、写入、修改文件内容。

下面将列举十个符合要求的Python文件处理例子。

1. 文件的创建和写入可以使用open函数创建一个新的文件,并使用write方法写入内容。

例如:```pythonfile = open("example.txt", "w")file.write("Hello, world!")file.close()```2. 文件的读取和输出使用open函数打开一个已存在的文件,并使用read方法读取文件内容,然后使用print函数输出。

例如:```pythonfile = open("example.txt", "r")content = file.read()print(content)file.close()```3. 逐行读取文件可以使用readlines方法逐行读取文件内容,并使用for循环逐行输出。

例如:```pythonfile = open("example.txt", "r")lines = file.readlines()for line in lines:print(line)file.close()```4. 追加写入文件使用open函数打开一个已存在的文件,并使用write方法追加写入内容。

例如:```pythonfile = open("example.txt", "a")file.write("This is a new line.")file.close()```5. 文件的复制可以使用open函数同时打开两个文件,然后使用read和write方法将一个文件的内容复制到另一个文件中。

python模块-OS模块详解

python模块-OS模块详解

python模块-OS模块详解1、按字母分os相关的函数:143个。

按字母排序如下:['abort', 'access', 'altsep','chdir', 'chmod', 'chown', 'chroot', 'close', 'closerange', 'confstr', 'confstr_names', 'ctermid', 'curdir','defpath', 'devnull', 'dup', 'dup2','environ', 'errno', 'error', 'execl', 'execle', 'execlp', 'execlpe', 'execv', 'execve', 'execvp', 'execvpe', 'extsep','fchdir', 'fchmod', 'fchown', 'fdatasync', 'fdopen', 'fork', 'forkpty', 'fpathconf', 'fstat', 'fstatvfs', 'fsync', 'ftruncate','getcwd', 'getcwdu', 'getegid', 'getenv', 'geteuid', 'getgid', 'getgroups', 'getloadavg', 'getlogin', 'getpgid', 'getpgrp', 'getpid', 'getppid', 'getsid', 'getuid','isatty','kill', 'killpg', 'lchown','linesep', 'link', 'listdir', 'lseek', 'lstat','major', 'makedev', 'makedirs', 'minor', 'mkdir', 'mkfifo', 'mknod', 'name', 'nice','open', 'openpty','pardir', 'path', 'pathconf', 'pathconf_names', 'pathsep', 'pipe', 'popen', 'popen2', 'popen3', 'popen4', 'putenv','read', 'readlink', 'remove', 'removedirs', 'rename', 'renames', 'rmdir','sep', 'setegid', 'seteuid', 'setgid', 'setgroups', 'setpgid', 'setpgrp', 'setregid', 'setreuid', 'setsid', 'setuid', 'spawnl', 'spawnle', 'spawnlp', 'spawnlpe', 'spawnv', 'spawnve', 'spawnvp', 'spawnvpe', 'stat', 'stat_float_times', 'stat_result', 'statvfs', 'statvfs_result', 'strerror', 'symlink', 'sys', 'sysconf', 'sysconf_names', 'system','tcgetpgrp', 'tcsetpgrp', 'tempnam', 'times', 'tmpfile', 'tmpnam', 'ttyname','umask', 'uname', 'unlink', 'unsetenv', 'urandom', 'utime','wait', 'wait3', 'wait4', 'waitpid', 'walk', 'write']2、按功能分a、⽂件和⽂件夹操作(重要)b、系统和环境相关(常⽤)c、进程相关(不常⽤)d、⽂件操作相关(建议⽤open)a、⽂件和⽂件夹操作(重要)临时⽂件:os.tmpfile()返回⼀个打开的模式为(w+b)的⽂件对象 .这⽂件对象没有⽂件夹⼊⼝,没有⽂件描述符,将会⾃动删除. 在unix,Windows中有效。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Python常见文件操作示例2.3. os.path 模块中的路径名访问函数4. 分隔5. basename() 去掉目录路径, 返回文件名6. dirname() 去掉文件名, 返回目录路径7. join() 将分离的各部分组合成一个路径名8. split() 返回(dirname(), basename()) 元组9. splitdrive() 返回(drivename, pathname) 元组10. splitext() 返回(filename, extension) 元组11.12. 信息13. getatime() 返回最近访问时间14. getctime() 返回文件创建时间15. getmtime() 返回最近文件修改时间16. getsize() 返回文件大小(以字节为单位)17.18. 查询19. exists() 指定路径(文件或目录)是否存在20. isabs() 指定路径是否为绝对路径21. isdir() 指定路径是否存在且为一个目录22. isfile() 指定路径是否存在且为一个文件23. islink() 指定路径是否存在且为一个符号链接24. ismount() 指定路径是否存在且为一个挂载点25. samefile() 两个路径名是否指向同个文件26.27. os.path.isdir(name):判断name是不是一个目录,name不是目录就返回false28. os.path.isfile(name):判断name是不是一个文件,不存在name也返回false29. os.path.exists(name):判断是否存在文件或目录name30. os.path.getsize(name):获得文件大小,如果name是目录返回0L31. os.path.abspath(name):获得绝对路径32. os.path.normpath(path):规范path字符串形式33. os.path.split(name):分割文件名与目录(事实上,如果你完全使用目录,它也会将最后一个目录作为文件名而分离,同时它不会判断文件或目录是否存在)34. os.path.splitext():分离文件名与扩展名35. os.path.join(path,name):连接目录与文件名或目录36. os.path.basename(path):返回文件名37. os.path.dirname(path):返回文件路径38.39.40. os模块中的文件操作:41. os 模块属性42. linesep 用于在文件中分隔行的字符串43. sep 用来分隔文件路径名的字符串44. pathsep 用于分隔文件路径的字符串45. curdir 当前工作目录的字符串名称46. pardir (当前工作目录的)父目录字符串名称47.48. 1.重命名:os.rename(old, new)49.50. 2.删除:os.remove(file)51.52. 3.列出目录下的文件:os.listdir(path)53.54. 4.获取当前工作目录:os.getcwd()55.56. 5.改变工作目录:os.chdir(newdir)57.58. 6.创建多级目录:os.makedirs(r"c:\python\test")59.60. 7.创建单个目录:os.mkdir("test")61.62. 8.删除多个目录:os.removedirs(r"c:\python") #删除所给路径最后一个目录下所有空目录。

63.64. 9.删除单个目录:os.rmdir("test")65.66. 10.获取文件属性:os.stat(file)67.68. 11.修改文件权限与时间戳:os.chmod(file)69.70. 12.执行操作系统命令:os.system("dir")71.72. 13.启动新进程:os.exec(), os.execvp()73.74. 14.在后台执行程序:osspawnv()75.76. 15.终止当前进程:os.exit(), os._exit()77.78. 16.分离文件名:os.path.split(r"c:\python\hello.py") --> ("c:\\python", "hello.py")79.80. 17.分离扩展名:os.path.splitext(r"c:\python\hello.py") --> ("c:\\python\\hello", ".py")81.82. 18.获取路径名:os.path.dirname(r"c:\python\hello.py") --> "c:\\python"83.84. 19.获取文件名:os.path.basename(r"r:\python\hello.py") --> "hello.py"85.86. 20.判断文件是否存在:os.path.exists(r"c:\python\hello.py") --> True87.88. 21.判断是否是绝对路径:os.path.isabs(r".\python\") --> False89.90. 22.判断是否是目录:os.path.isdir(r"c:\python") --> True91.92. 23.判断是否是文件:os.path.isfile(r"c:\python\hello.py") --> True93.94. 24.判断是否是链接文件:os.path.islink(r"c:\python\hello.py") --> False95.96. 25.获取文件大小:os.path.getsize(filename)97.98. 26.*******:os.ismount("c:\\") --> True99.100. 27.搜索目录下的所有文件:os.path.walk()101.102. shutil模块对文件的操作:103. 1.复制单个文件:shultil.copy(oldfile, newfle)104.105. 2.复制整个目录树:shultil.copytree(r".\setup", r".\backup")106.107. 3.删除整个目录树:shultil.rmtree(r".\backup")108.109. 临时文件的操作:110. 1.创建一个唯一的临时文件:tempfile.mktemp() --> filename111.112. 2.打开临时文件:tempfile.TemporaryFile()113.114. 内存文件(StringIO和cStringIO)操作115. [4.StringIO] #cStringIO是StringIO模块的快速实现模块116.117. 1.创建内存文件并写入初始数据:f = StringIO.StringIO("Hello world!") 118.119. 2.读入内存文件数据:print f.read() #或print f.getvalue() --> Hello world! 120.121. 3.想内存文件写入数据:f.write("Good day!")122.123. 4.关闭内存文件:f.close()124. '''125. import os126. import os.path127. import unittest128. import time129. #import pygame130.131. class PyFileCommonOperatorTest(unittest.TestCase): 132. def __init__(self):133. """constructor"""134.135. def test01(self):136. print os.linesep137. print os.sep138. print os.pathsep139. print os.curdir140. print os.pardir141. print os.getcwd()142. print 'unittest here'143.144.145. if __name__ == "__main__":146. t = PyFileCommonOperatorTest()147. t.test01()[python] view plaincopyprint?1.[python] view plaincopyprint?1. #读文件的写法:2. #读文本文件:3. input = open('data', 'r')#第二个参数是默认的,可以不加4. #读二进制文件:5. input = open('data', 'rb')6. #读取所有文件内容:7. open('xxoo.txt').read()8. #读取固定字节9. open('abinfile', 'rb').read(100)10. #读每行11. file_object.readlines()。

相关文档
最新文档