python os库常用函数学习

本文详细介绍了在Fedora 18环境下使用Python进行基本操作及系统管理的方法,包括获取工作目录、操作文件系统、运行shell命令、创建与删除目录等常用功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

使用环境64位的fedora 18,python版本是python 2.7.3

1、os.getcwd()函数

    功能:获取当前目录,python 的工作目



  1. import os
  2.                                                                   
  3. pwd = os.getcwd()
  4.                                                                   
  5. print (pwd)

2、os.name 函数


    功能:获取当前使用的操作系统(获取信息不够详细)

              其中 'nt' 是 windows,'posix' 是 linux 或者 unix


  1. import os
  2.                                                              
  3. name = os.name
  4.                                                              
  5. if name == 'posix':
  6.                                                                  
  7.     print ("this is Linux or Unix")
  8.                                                              
  9. elif name == 'nt':
  10.                                                              
  11.    print ("this is windows")
  12.                                                              
  13. else:
  14.                                                              
  15.    print ("this is other system") 
3、os.remove()函数


    功能:删除指定文件

    eg:删除 file.txt 文件

  1. import os
  2.                                                   
  3. os.remove(’file.txt‘)

4、os.removedirs()函数

    功能:删除指定目录

    eg:删除 file目录


  1. import os
  2.                                                 
  3. os.removedirs(‘file’)

5、os.system()函数

    功能:运行shell命令

    eg:执行ls -a > 1.txt命令


  1. import os
  2.                                            
  3. os.system(‘ls -> 1.txt’)

6、os.mkdir()函数

    功能:创建一个新目录

    eg:创建一个 file 目录


  1. import os
  2.                                  
  3. os.mkdir(‘file’)

7、os.chdir()函数

    功能:改变当前路径到指定路径

    eg:我现在从当前路径到 filepath 所指定的路径下


  1. import os
  2.                       
  3. filepath = '/home'
  4.                       
  5. pwd = os.getcwd()
  6.                       
  7. print (pwd)
  8.                       
  9. os.chdir(filepath)
  10.                       
  11. pwd = os.getcwd()
  12.                       
  13. print (pwd)

8、os.listdir()函数

    功能:返回指定目录下的所有目录和文件

    eg:列出当前目录下的所有文件和目录


  1. import os
  2.              
  3. pwd = os.getcwd()
  4.              
  5. name = os.listdir(pwd)
  6.              
  7. for filename in name:
  8.              
  9.     print (filename)
### Python `os` 常用函数列表 #### 获取当前工作目录 可以使用 `os.getcwd()` 函数来获取当前的工作路径[^2]。 ```python import os current_directory = os.getcwd() print(f"Current Working Directory: {current_directory}") ``` #### 列出指定目录的内容 通过 `os.listdir(path)` 可以返回给定路径下的所有文件和子目录名称组成的列表[^3]。 ```python directory_contents = os.listdir(".") for item in directory_contents: print(item) ``` #### 创建新目录 有两种方式创建新的目录结构: - 使用 `os.mkdir(directory_name)` 来创建单级的新目录,如果上级目录不存在则会抛错。 - 使用 `os.makedirs(directory_name)` 支持多层级创建,即使父级目录也不存在也会一并建立。 ```python try: os.mkdir("new_folder") # 单层创建 except FileExistsError as e: print(e) os.makedirs("parent/child/grandchild", exist_ok=True) # 多层次创建 ``` #### 删除现有目录 对于删除操作也有两种不同的方法: - `os.rmdir(directory_name)` 仅能移除非空的一级目录。 - `os.removedirs(directory_name)` 同样只适用于空目录但是可以从最底层开始逐级向上清理直到遇到非空为止。 ```python os.rmdir("empty_folder") # 需要确保目标为空才能成功执行 os.removedirs("a/b/c") # 自底向上去除一系列连续的空目录 ``` #### 文件处理 涉及具体的文件管理还包括读取、写入以及重命名等功能。这里列举几个常用的例子: - **打开文件**: 直接利用内置的 `open()` 方法即可完成基本的文件IO任务;而为了更安全地操作建议配合上下文管理器(`with`)一起使用。 - **移动或改名文件**: 使用 `shutil.move(src, dst)` 或者 `os.rename(old_path, new_path)` 实现文件的位置变更或是名字更改[^4]。 ```python source_file = "example.txt" destination_file = "/path/to/new_location/example_renamed.txt" # 安全的方式打开文件进行读写 with open(source_file, 'r+') as f: content = f.read() # 更改文件位置及名称 os.rename(source_file, destination_file) ``` #### 路径解析 针对复杂的路径转换需求提供了丰富的辅助工具类如 `os.path` 子模块中的各种静态方法用于标准化不同平台间的差异性表达形式,并支持拆分组合等灵活的操作。 ```python from pathlib import Path relative_path = './data/sample.csv' absolute_path = os.path.abspath(relative_path) normalized_path = os.path.normpath(absolute_path) base_dir, filename = os.path.split(normalized_path) extension = ''.join(Path(filename).suffixes) print(f""" Relative Path: {relative_path} Absolute Path: {absolute_path} Normalized Path: {normalized_path} Base Directory: {base_dir} Filename: {filename} File Extension(s): {extension} """) ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值