Python必学的OS模块详解,python的os模块使用

  Python必学的OS模块详解,python的os模块使用

  本文将详细介绍python的内置包——OS包。OS包具有通用的操作系统功能和操作系统驱动功能的各种功能。来学习如何使用边肖操作系统包。

  00-1010 OS模块文件和目录函数介绍path模块path模块的常用方法今天我们来学习一下python的内置包——OS包。OS包具有通用的操作系统功能和操作系统驱动功能的各种功能。其中最常见的就是路径和文件的操作,比如检查某个路径下是否有文件,某个路径是否存在等。您还可以创建和删除文件。接下来,我们来详细了解一下OS中文件的操作功能和使用方法。

  

目录

  

os 模块

  函数名参数介绍返回值示例getcwd无参数返回当前路径os.getcwd()字符串listdirpath返回指定路径os下的所有文件或文件夹。listdir (C://Windows )返回一个列表makedirpath模式创建多级文件夹OS。Makedirs (D3360//Pycharm/py )无返回值removedirspath删除文件夹OS。多级路径下的RemoveDirs (d://pycharm/py )。没有返回值renameoldname,newname重命名文件或文件夹OS。Rename (d://pycharm ,D://pycharm01 )无返回值rmdirpath只能删除空文件夹OS。RMDIR (d://pycharm01 )没有返回值的例子如下:

  导入操作系统

  current_path=os.getcwd()

  打印(当前路径)

  新路径=%s/test01 %当前路径

  os.makedirs(新路径)

  list_dir=os.listdir(当前路径)

  打印(列表目录)

  #执行结果如下:

  #/users/user _ name/pycharmprojects/xxxxx/python _ package/animal这是当前Mac系统的绝对路径,如果是WIN系统会显示盘符。

  # [猫,狗, test_time.py , __init__。py , test.py , package_os.py , test01]

  #列出当前路径中的所有文件,并成功创建“test01”文件夹。

  这里有一张便条。如果要创建的文件夹或文件已经存在于当前路径中,将出现以下错误。

  我们仅在上面演示了如何创建文件夹。如果我们尝试创建一个多级文件夹会怎么样?

  导入操作系统

  current_path=os.getcwd()

  打印(当前路径)

  新路径=%s/test01 %当前路径

  # os.makedirs(新路径)

  list_dir=os.listdir(当前路径)

  打印(列表目录

  )

  new_path02 = %s/test02/test02-01 % current_path # 尝试创建多级文件夹及文件

  os.makedirs(new_path02)

  

  

  注意:如果不指定创建文件夹的路径,直接利用 os.makedirs('filename') 就可以在当前脚本的默认路径下创建该文件夹,这里就不再进行演示了。大家可以自己在本地试一下。

  上面我们演示了 getcwd()、listdir()、makedir() 三个函数,接下来我们演示 removedirs()、rename()、rmdir() 三个函数

  

import os

  current_path = os.getcwd()

  print(current_path)

  new_path = %s/test01 % current_path

  # os.makedirs(new_path)

  list_dir = os.listdir(current_path)

  print(list_dir)

  new_path02 = %s/test02/test02-01 % current_path # 尝试创建多级文件夹及文件

  # os.makedirs(new_path02)

  # 之所以要注销 os.makedir() 是因为,我们已经创建好了 test01、test02/test02-01 ,再次执行会报错

  os.removedirs(test02/test02-01) # 删除 test02 多级文件夹

  os.renames(test.py, test_new.py) # 重命名 test.py 文件夹为 test_new.py

  os.rmdir(test01) # 删除空文件夹 test01

  # >>> 执行效果如下图

  

  

  注意:当我们使用 os.rmdir() 函数删除非空的文件夹时,是会报错的。比如我们尝试删除 dog 文件夹 就会报错 OSError: [Errno 66] Directory not empty: 'dog' , 该提示的意思是 : OSERROR - dog 是一个非空文件夹 。

  以上演示的是 OS 包常用的调用文件的函数,其实OS操作文件的函数还有很多 ,大家可以尝试 使用 dir() 函数查看并尝试练习一下其他函数的应用。

  

  

path 模块

  os.path 模块同样也是我们在日常开发工作中比较常用的一个模块,接下来我们看看 path 模块都有哪些较常用的函数。

  

  

​path 模块常用方法

  函数名参数介绍举例返回值existspath文件或路径是否存在os.path.exists(‘d://test/’)bool类型isdirpath是否是路径os.path.isdir(‘d://test/’)bool类型isabspath是否是绝对路径os.isabs(‘test’)bool类型isfilepath是否是文件os.path.isfile(‘d://test.py’)bool类型joinpath, path*通过路径的’//'将其用字符串合并os.path.join(‘d://’,‘test’)字符串splitpath通过路径的’//'以最后一层路径为及基准切割成元组os.path.split(‘d://test’)元组

  需要注意一点:win电脑和 mac电脑的 路径标识符不一样。 win系统为 // , mac或者linux系统为 / 。

  结合我们上文 os 包常用的函数演示案例如下:

  

import os

  import os.path

  current_path = os.getcwd() # 定义 current_path 变量获取当前脚本的绝对路径

  print(current_path) # 打印 current_path 变量

  print(os.path.isabs(current_path)) # 利用 path 模块的 isabs 函数判断 current_path 是否是绝对路径 [返回结果 True]

  print(os.path.isabs(animal)) # 利用 path 模块的 isabs 函数判断 animal 是否是绝对路径 [返回结果 False , animal 是相对路径]

  new_path = %s/test1 % current_path

  if os.path.exists(new_path): # 判断 new_path 是否存在,如果存在,则删除 new_path

   os.makedirs(new_path)

  data = os.listdir(current_path)

  print(data)

  new_path2 = os.path.join(current_path, test2, test2_01)

  print(new_path2)

  # 将 test2、test2_01 与 current_path 拼接在一起,生成一个 路径形式 的字符串赋值给new_path2

  # >>> 执行结果为 /Users/XXX/PycharmProjects/python_package/test2/test2_01

  if os.path.exists(new_path2): # 判断 new_path2 是否存在,如果不存在,则通过 os包 的 makedirs 函数创建

   os.makedirs(new_path2)

  if os.path.exists(test3): # 判断 test3 是否存在,如果不存在,则通过 os包 的 makedirs 函数创建

   os.makedirs(test3)

  if os.path.exists(test2/test2_01): # 判断 test2/test2_01 是否存在,如果存在,则删除 test2/test2_01

   os.removedirs(test2/test2_01)

  if os.path.exists(test3): # 判断 test3 是否存在,如果存在,则将 test3 重命名为 test3_new

   os.rename(test3, test3_new)

  if os.path.exists(test1): # 判断 test1 是否存在,如果存在,则删除 test1

   os.rmdir(test1)

  current_path = current_path + /package_os.py

  print(os.path.isfile(current_path))

  # 利用 path模块 的 isfile函数 判断 current_path 是否是一个文件[返回结果为 True ]

  print(os.path.split(current_path))

  # 利用 path模块 的 split函数 将 package_os.py 与 路径分割开; 实际工作中经常通过这种方式将带有文件的路径进行分割

  # >>> 执行结果为:(/Users/XXX/PycharmProjects/python_package, package_os.py)

  print(os.path.isdir(os.path.split(current_path)[0]))

  # 利用 path模块 的 isdir函数 判断 current_path 被 split 函数分割后 第一个元素是不是路径 [返回结果为 True ]

  print(dir(os.path))

  # 通过 dir()函数 查看 当前 os.path 模块更多的功能;[可以自己尝试一下 os.path 更多的功能]

  

  以上就是Python学习之os包使用教程详解的详细内容,更多关于Python os包的资料请关注盛行IT软件开发工作室其它相关文章!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: