Python——第五章:os模块、sys模块

os 模块

os 模块提供了很多允许你的程序与操作系统直接交互的功能

import os

得到当前工作目录,即当前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() =>  os.path.split('/home/swaroop/byte/code/poem.txt') 结果是一个元组:('/home/swaroop/byte/code', 'poem.txt')

分离扩展名:os.path.splitext()  =>  os.path.splitext('/usr/local/test.py')结果是一个元组:('/usr/local/test', '.py')

获取路径名:os.path.dirname()

获得绝对路径: os.path.abspath()

获取文件名:os.path.basename()

运行shell命令: os.system()

读取操作系统环境变量HOME的值:os.getenv("HOME")

返回操作系统所有的环境变量:os.environ

设置系统环境变量,仅程序运行时有效:os.environ.setdefault('HOME','/home/admin')

给出当前平台使用的行终止符:os.linesep,os.linesep 是 Python 中 os 模块提供的一个常量,表示当前操作系统上的换行符。这个常量可以在跨平台的代码中用于插入适当的换行符,而不需要关心是 \n(Unix/Linux)、\r\n(Windows)还是 \r(旧版的 Mac OS)。 =>  print(f"Hello{os.linesep}World")

指示你正在使用的平台:os.name 对于Windows,它是nt,而对于Linux/Unix用户,它是posix

重命名:os.rename (old, new)

创建多级目录:os.makedirs (d:\\c/d/e/f/g) 在Windows里是\\代表路径 或者使用os.makedirs (c/d/e/f/g)在当前路径下创建c/d/e/f/g多层文件夹

创建单个目录:os.mkdir ("testdir")

获取文件属性:os.stat (file) =>  print(os.stat("模块.py"))

  • 访问时间 (st_atime): 2023-03-05 10:54:39 (UTC) =>  st_atime=1701763679
  • 修改时间 (st_mtime): 2023-03-05 10:54:38 (UTC) =>  st_mtime=1701763678
  • 创建时间 (st_ctime): 2023-03-04 08:16:08 (UTC) =>  st_ctime=1701669768

修改文件权限与时间戳:os.chmod (file)

获取文件大小:os.path.getsize (filename)

结合目录名与文件名:os.path.join(dir,filename)

改变工作目录到dirname: os.chdir(dirname)

获取当前终端的大小: os.get_terminal_size()

杀死进程: os.kill(10884,signal.SIGKILL)

 

sys模块

sys 模块是 Python 标准库中的一个核心模块,提供了与 Python 解释器及其环境相关的功能。以下是 sys 模块的一些主要功能和常用属性:

  1. 命令行参数: sys.argv 是一个包含命令行参数的列表。sys.argv[0] 是脚本的名称,而 sys.argv[1:] 包含传递给脚本的命令行参数。

  2. 路径操作: sys.path 是一个包含模块搜索路径的列表。它用于告诉解释器在哪里查找模块。

  3. 标准输入输出: sys.stdinsys.stdoutsys.stderr 分别是标准输入、标准输出和标准错误的文件对象。可以用于重定向输入输出。

  4. 退出程序: sys.exit() 用于退出程序,可选地传递一个退出状态码。通常用于在程序遇到错误或满足某个条件时退出。

  5. 获取和设置异常信息: sys.exc_info() 返回当前正在处理的异常信息的元组。sys.exc_clear() 用于清除当前的异常信息。

  6. 版本信息: sys.version 包含 Python 解释器的版本信息字符串。sys.version_info 是一个元组,包含主版本、次版本和微版本号。

  7. 模块操作: sys.modules 是一个字典,包含当前导入的所有模块。可以用于检查和操作模块。

  8. 其他杂项: 包括一些其他功能,如 sys.platform 获取当前平台信息,sys.getsizeof() 获取对象的大小,以及其他与解释器和运行时环境相关的功能。

这只是 sys 模块提供的一部分功能,它在 Python 编程中经常被用于处理与解释器交互、系统信息和运行时环境相关的任务。

 


 

sys.path 是 Python 中 sys 模块提供的一个变量,它是一个包含模块搜索路径的列表。当你尝试导入一个模块时,Python 解释器会按照 sys.path 中的路径顺序来查找这个模块。

你可以通过以下方式查看 sys.path 的值:

import sys
print(sys.path)

这会打印出一个列表,其中包含了解释器用来查找模块的路径。这个列表通常包括以下几个项:

  1. 当前脚本所在的目录。
  2. Python 安装目录下的 Lib 目录,其中包含标准库模块。
  3. 任何在 PYTHONPATH 环境变量中指定的路径。
  4. 其他一些系统相关的默认路径。

在这个列表中,路径的顺序很重要,Python 解释器会按照这个顺序搜索模块。如果你的模块不在这些路径下,你可能需要手动将其路径添加到 sys.path 中。不过,最好的做法是将模块安装到 Python 解释器可以找到的路径中,或者使用虚拟环境。

 


 

sys.argv 是 Python 中 sys 模块提供的一个列表,它包含了命令行参数的相关信息。这个列表的第一个元素是脚本的名称(或者是空字符串,表示模块执行),而从第二个元素开始,依次是传递给脚本的命令行参数。

例如,考虑以下简单的 Python 脚本 example.py

import sys # 打印命令行参数 print("脚本名称:", sys.argv[0]) print("命令行参数:", sys.argv[1:])

如果你在命令行中执行:

python example.py arg1 arg2 arg3

那么输出将是:

脚本名称: example.py 命令行参数: ['arg1', 'arg2', 'arg3']

在这个例子中,sys.argv[0] 是脚本的名称,而 sys.argv[1:] 包含了传递给脚本的命令行参数。这使得你可以在脚本中获取和处理命令行输入。

posted @   Magiclala  阅读(72)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)
点击右上角即可分享
微信分享提示