Python里的os和os.path模块

        Python作为一门功能丰富的编程语言,提供了许多方便的内置模块来处理操作系统相关的功能。在Python中,os模块和os.path模块是两个常用的模块,它们提供了许多用于文件和目录操作的函数和方法,能够帮助开发者轻松处理文件管理、路径操作等任务。本文将介绍Python中的os模块和os.path模块,并深入探讨它们的常见用法和功能。

一、os模块

        os模块是Python提供的一个与操作系统交互的模块,包含了许多与文件和目录操作相关的函数和方法。通过os模块,开发者能够在不同的操作系统环境下执行各种操作,比如创建、删除和更改目录,获取系统环境变量等。

1. 获取当前工作目录

使用os模块提供的getcwd()函数可以获取当前Python脚本的工作目录。示例代码如下:

import os
current_dir = os.getcwd()
print(current_dir)

以上代码将打印出当前Python脚本的工作目录路径。

2. 创建目录

使用os模块提供的mkdir()函数可以在指定路径创建目录。示例代码如下:

import os
os.mkdir("new_directory")

以上代码将在当前工作目录下创建名为new_directory的新目录。

3. 删除目录

使用os模块提供的rmdir()函数可以删除指定路径的目录。示例代码如下:

import os
os.rmdir("new_directory")

以上代码将删除名为new_directory的目录。

4. 执行系统命令

使用os模块提供的system()函数可以执行系统命令。示例代码如下:

import os
os.system("ls -l")

以上代码将在Unix/Linux系统上执行ls -l命令,并将结果输出到控制台。

二、os.path模块

        os.path模块提供了许多与路径操作相关的函数和方法,用于处理文件路径、文件名、路径组合等操作。开发者可以使用os.path模块来编写与操作系统无关的路径处理代码,使得代码能够在不同的操作系统上运行而不需要修改。

1. 检查路径是否存在

使用os.path模块提供的exists()函数可以检查指定路径是否存在。示例代码如下:

import os.path
if os.path.exists("/path/to/somefile"):
    print("File exists")
else:
    print("File does not exist")

以上代码将检查路径/path/to/somefile是否存在,并打印结果。

2. 获取绝对路径

使用os.path模块提供的abspath()函数可以获取指定路径的绝对路径。示例代码如下:

import os.path
abs_path = os.path.abspath("relative_path")
print(abs_path)

以上代码将打印出相对路径relative_path的绝对路径。

​​​​​​​

3. 路径拼接

使用os.path模块提供的join()函数可以将多个路径组合成一个。示例代码如下:

import os.path
path1 = "/path/to/directory"
path2 = "file.txt"
result = os.path.join(path1, path2)
print(result)

以上代码将打印出路径/path/to/directory/file.txt。

4. 获取路径的目录名和文件名

使用os.path模块提供的dirname()函数可以获取路径的目录名,使用basename()函数可以获取路径的文件名。示例代码如下:

import os.path
path = "/path/to/somefile"
directory = os.path.dirname(path)
filename = os.path.basename(path)
print("Directory:", directory)
print("Filename:", filename)

以上代码将打印出路径/path/to/somefile的目录名和文件名。

不知道人工智能如何学习?不知道单片机如何运作?不知道嵌入式究竟是何方神圣?搞不清楚什么是物联网?遇到问题无人可问?来我的绿泡泡交流群吧!里面有丰富的人工智能资料,帮助你自主学习人工智能相关内容,不论是基础的Python教程、OpenCV教程以及机器学习等,都可以在群中找到;单片机毕设项目、单片机从入门到高阶的详细解读、单片机的一系列资料也备好放入群中!关于嵌入式,我这里不仅仅有嵌入式相关书籍的电子版本,更是有丰富的嵌入式学习资料,100G stm32综合项目实战提升包,70G 全网最全嵌入式&物联网资料包,嵌入式面试、笔试的资料,物联网操作系统FreeRTOS课件源码!群内高手云集,各位大佬能够为您排忧解难,让您在学习的过程中如虎添翼!扫码进群即可拥有这一切!还在等什么?赶快拿起手机,加入群聊吧!扫码进群领资料

  • 21
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值