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
模块的一些主要功能和常用属性:
命令行参数:
sys.argv
是一个包含命令行参数的列表。sys.argv[0]
是脚本的名称,而sys.argv[1:]
包含传递给脚本的命令行参数。路径操作:
sys.path
是一个包含模块搜索路径的列表。它用于告诉解释器在哪里查找模块。标准输入输出:
sys.stdin
、sys.stdout
和sys.stderr
分别是标准输入、标准输出和标准错误的文件对象。可以用于重定向输入输出。退出程序:
sys.exit()
用于退出程序,可选地传递一个退出状态码。通常用于在程序遇到错误或满足某个条件时退出。获取和设置异常信息:
sys.exc_info()
返回当前正在处理的异常信息的元组。sys.exc_clear()
用于清除当前的异常信息。版本信息:
sys.version
包含 Python 解释器的版本信息字符串。sys.version_info
是一个元组,包含主版本、次版本和微版本号。模块操作:
sys.modules
是一个字典,包含当前导入的所有模块。可以用于检查和操作模块。其他杂项: 包括一些其他功能,如
sys.platform
获取当前平台信息,sys.getsizeof()
获取对象的大小,以及其他与解释器和运行时环境相关的功能。
这只是 sys
模块提供的一部分功能,它在 Python 编程中经常被用于处理与解释器交互、系统信息和运行时环境相关的任务。
sys.path
是 Python 中 sys
模块提供的一个变量,它是一个包含模块搜索路径的列表。当你尝试导入一个模块时,Python 解释器会按照 sys.path
中的路径顺序来查找这个模块。
你可以通过以下方式查看 sys.path
的值:
import sys
print(sys.path)
这会打印出一个列表,其中包含了解释器用来查找模块的路径。这个列表通常包括以下几个项:
- 当前脚本所在的目录。
- Python 安装目录下的
Lib
目录,其中包含标准库模块。 - 任何在
PYTHONPATH
环境变量中指定的路径。 - 其他一些系统相关的默认路径。
在这个列表中,路径的顺序很重要,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:]
包含了传递给脚本的命令行参数。这使得你可以在脚本中获取和处理命令行输入。
Python——第五章:os模块、sys模块的更多相关文章
- python学习笔记(五)os、sys模块
一.os模块 print(os.name) #输出字符串指示正在使用的平台.如果是window 则用'nt'表示,对于Linux/Unix用户,它是'posix'. print(os.getcwd( ...
- python之random 、os 、sys 模块
一.random模块 import random print(random.random())#(0,1)----float 大于0且小于1之间的小数 print(random.randint(1,3 ...
- Python第五章__模块介绍,常用内置模块
Python第五章__模块介绍,常用内置模块 欢迎加入Linux_Python学习群 群号:478616847 目录: 模块与导入介绍 包的介绍 time &datetime模块 rando ...
- 简学Python第五章__模块介绍,常用内置模块
Python第五章__模块介绍,常用内置模块 欢迎加入Linux_Python学习群 群号:478616847 目录: 模块与导入介绍 包的介绍 time &datetime模块 rando ...
- Python os与sys模块解析
os与sys模块的官方解释如下: os: This module provides a portable way of using operating system dependent functio ...
- Python中os和sys模块中常用的方法
os模块 os模块:该模块提供了一些方便使用操作系统相关功能的函数 os.remove() 删除文件 os.rename() 重命名文件 os.walk() 文件目录遍历器 os.chdir() 改变 ...
- Python中os与sys模块的区别
os与sys模块的官方解释如下: os: This module provides a portable way of using operating system dependent functio ...
- python 常用模块 time random os模块 sys模块 json & pickle shelve模块 xml模块 configparser hashlib subprocess logging re正则
python 常用模块 time random os模块 sys模块 json & pickle shelve模块 xml模块 configparser hashlib subprocess ...
- Python基础-os和sys模块
os模块提供对操作系统进行调用的接口 import os os.getcwd() # 获取当前工作目录 os.chdir(r'd:\fansik') # 修改对当前工作目录 print(os.curd ...
- Python进阶(九)----json模块, pickle模块, os模块,sys模块,hashlib模块
Python进阶----json模块, pickle模块, os模块,sys模块,hashlib模块 一丶序列化模块 什么是序列化: 将一种数据结构,转换成一个特殊的序列(特殊字符串,用于网络传输 ...
随机推荐
- 解锁Java面试中的锁:深入了解不同类型的锁和它们的用途
简介 多线程编程在现代软件开发中扮演着至关重要的角色.它使我们能够有效地利用多核处理器和提高应用程序的性能.然而,多线程编程也伴随着一系列挑战,其中最重要的之一就是处理共享资源的线程安全性.在这个领域 ...
- C#归并排序算法
前言 归并排序是一种常见的排序算法,它采用分治法的思想,在排序过程中不断将待排序序列分割成更小的子序列,直到每个子序列中只剩下一个元素,然后将这些子序列两两合并并排序,最终得到一个有序的序列. 归并排 ...
- Python - 打断点以及如何查看
1.鼠标左键单击代码跟行号中间的地方会出现一个红点,这个就是断点. 2.点击Debug按钮,进入调试模式. 3.当代码运行到断点之前,所有关于变量的代码,都会出现运行的结果. 4.点击Step Int ...
- 快速掌握keepalived
转载请注明出处: Keepalived是一个基于VRRP(虚拟路由冗余协议)的开源软件,用于在Linux系统上实现高可用性和负载均衡.它的主要功能是通过多台服务器之间的协作,确保在其中一台服务器发生故 ...
- GameFramework摘录 - 2.访问器模式(Version、Logger)
访问器模式 Version.Logger等基础模块,功能相对固定但拥有几套不同的行为(如开发版本和正式版本不同),采用访问器模式,便于调整功能或复用 public static class Versi ...
- 合唱队形(lgP1091)
思路: 先从左到右求一遍最长不下降子序列,再同样方法从右到左求一遍. 然后我们枚举分界点,则总人数就是左边一半加上右边一半的人数. 取最大值,输出答案. 见注释. #include<bits/s ...
- 字符串小记 II:字符串自动机
OI 中的自动机指的是"有限状态自动机",它是对一串信号进行处理的数学模型,一般由以下三部分构成: 字符集(\(\Sigma\)),能够输入进自动机的字符集合. 状态集合(\(Q\ ...
- vivo 网络端口安全建设技术实践
作者:vivo 互联网安全团队 - Peng Qiankun 随着互联网业务的快速发展,网络攻击的频率和威胁性也在不断增加,端口是应用通信中的门户,它是数据进出应用的必经之路,因此端口安全也逐渐成为了 ...
- dotnet 探究 SemanticKernel 的 planner 的原理
在使用 SemanticKernel 时,我着迷于 SemanticKernel 强大的 plan 能力,通过 plan 功能可以让 AI 自动调度拼装多个模块实现复杂的功能.我特别好奇 Semant ...
- 支持C#的开源免费、新手友好的数据结构与算法入门教程
前言 前段时间完成了C#经典十大排序算法(完结)然后有很多小伙伴问想要系统化的学习数据结构和算法,不知道该怎么入门,有无好的教程推荐的.今天给大家推荐一个支持C#的开源免费.新手友好的数据结构与算法入 ...