您的位置:首页 > 娱乐 > 八卦 > 网页设计作品集展示_企业标志logo设计图片_湛江seo网站管理_优化大师在哪里

网页设计作品集展示_企业标志logo设计图片_湛江seo网站管理_优化大师在哪里

2025/5/3 9:16:40 来源:https://blog.csdn.net/2301_80079642/article/details/146188150  浏览:    关键词:网页设计作品集展示_企业标志logo设计图片_湛江seo网站管理_优化大师在哪里
网页设计作品集展示_企业标志logo设计图片_湛江seo网站管理_优化大师在哪里

sys 是 Python 标准库中的一个内置模块,它提供了许多与 Python 解释器和系统环境进行交互的功能。

sys方法

1. 导入 sys 模块

在使用 sys 库的功能之前,需要先导入它:

import sys

2. 命令行参数 (sys.argv)

sys.argv 是一个包含命令行参数的列表。其中,sys.argv[0] 是脚本的名称,后续的元素是传递给脚本的参数。

import sys# 打印脚本名称
print(f"脚本名称: {sys.argv[0]}")# 打印所有命令行参数
for i, arg in enumerate(sys.argv):print(f"参数 {i}: {arg}")

假设将上述代码保存为 test.py,在命令行中运行 python test.py arg1 arg2,输出结果将显示脚本名称和传递的参数。

3. Python 解释器信息

3.1 sys.version

sys.version 是一个字符串,包含了 Python 解释器的版本信息,如 Python 版本号、编译信息等。

import sys
print(sys.version)
3.2 sys.version_info

sys.version_info 是一个 namedtuple,包含了 Python 版本的主要信息,如主版本号、次版本号、微版本号等。

import sys
print(sys.version_info)
print(f"主版本号: {sys.version_info.major}")
print(f"次版本号: {sys.version_info.minor}")

4. 系统路径 (sys.path)

sys.path 是一个包含模块搜索路径的列表。Python 在导入模块时,会按照这个列表中的路径顺序进行搜索。

import sys# 打印系统路径
for path in sys.path:print(path)# 可以动态添加路径
sys.path.append('/path/to/your/module')

5. 退出 Python 解释器 (sys.exit())

sys.exit() 函数用于退出 Python 解释器。可以传递一个整数参数作为退出状态码,默认状态码为 0 表示正常退出。

import systry:# 一些代码逻辑result = 1 / 0  # 模拟异常
except ZeroDivisionError:print("发生除零错误,程序退出")sys.exit(1)  # 以状态码 1 退出

6. 标准输入、输出和错误流

sys 模块提供了对标准输入 (sys.stdin)、标准输出 (sys.stdout) 和标准错误 (sys.stderr) 的访问。

6.1 标准输出重定向
import sys# 保存原始的标准输出
original_stdout = sys.stdout# 打开一个文件以写入模式
with open('output.txt', 'w') as f:# 将标准输出重定向到文件sys.stdout = fprint("这行文本将被写入文件")# 恢复标准输出
sys.stdout = original_stdout
print("这行文本将显示在控制台")
6.2 标准输入读取
import sys# 从标准输入读取一行
line = sys.stdin.readline()
print(f"你输入的内容是: {line.strip()}")

7. 递归深度限制 (sys.getrecursionlimit()sys.setrecursionlimit())

Python 解释器对递归调用的深度有一个默认限制,以防止无限递归导致栈溢出。可以使用 sys.getrecursionlimit() 获取当前的递归深度限制,使用 sys.setrecursionlimit() 设置新的递归深度限制。

import sys# 获取当前递归深度限制
current_limit = sys.getrecursionlimit()
print(f"当前递归深度限制: {current_limit}")# 设置新的递归深度限制
sys.setrecursionlimit(2000)
new_limit = sys.getrecursionlimit()
print(f"新的递归深度限制: {new_limit}")

8. 平台信息 (sys.platform)

sys.platform 是一个字符串,用于标识当前 Python 解释器运行的操作系统平台。

import sysprint(f"当前操作系统平台: {sys.platform}")

常见的平台标识符包括 'win32'(Windows)、'linux'(Linux)、'darwin'(macOS)等。

9. 最大整数值 (sys.maxsize)

sys.maxsize 表示当前平台上 Python 解释器所能表示的最大整数值。

import sysprint(f"最大整数值: {sys.maxsize}")

10. 内置模块信息 (sys.builtin_module_names)

sys.builtin_module_names 是一个包含所有内置模块名称的元组。

import sysprint("所有内置模块名称:")
for module_name in sys.builtin_module_names:print(module_name)

11. 内存使用信息 (sys.getsizeof())

sys.getsizeof() 函数用于返回对象占用的内存大小(以字节为单位)。

import sysmy_list = [1, 2, 3, 4, 5]
list_size = sys.getsizeof(my_list)
print(f"列表占用的内存大小: {list_size} 字节")

os模块常量

一、平台标识常量

1. os.name

对应系统典型场景
posixLinux/macOS判断是否支持 Unix 特性
ntWindows处理路径分隔符差异
javaJython 环境特殊运行环境检测
if os.name == 'posix':print("正在类 Unix 系统运行")

二、路径操作常量

1. 路径分隔符

常量值 (Win/Linux)作用
os.sep\ / /路径层级分隔符(推荐替代硬编码符号)
os.altsep/ / None备用分隔符(Win 兼容 Unix 路径)
os.extsep.文件名与扩展名的分隔符

跨平台路径构建示例

config_path = ["data", "config", "app.yaml"]
full_path = os.sep.join(config_path)  # 自动适配系统分隔符

2. 路径组合符

常量值 (Win/Linux)应用场景
os.pathsep; / :环境变量多路径分隔符(PATH)
os.defpath.;/bin / 类似值可执行文件默认搜索路径

三、目录符号常量

常量功能说明
os.curdir.表示当前目录
os.pardir..表示父目录

路径解析示例

parent_dir = os.path.abspath(os.path.join(os.curdir, os.pardir))

四、文件操作常量

1. 文件存在性及权限检查

常量二进制掩码用途
os.F_OK0检查文件是否存在
os.R_OK4检查读权限
os.W_OK2检查写权限
os.X_OK1检查执行权限

权限验证代码

if os.access("/usr/bin/python", os.X_OK):print("文件可执行")

2. 文件打开模式(需配合 os.open

常量功能说明
os.O_RDONLY只读模式
os.O_WRONLY只写模式
os.O_RDWR读写模式
os.O_CREAT文件不存在时创建
os.O_EXCL与 O_CREAT 配合使用防覆盖

文件创建示例

fd = os.open("data.log", os.O_WRONLY | os.O_CREAT, 0o644)

3. 文件指针定位

常量对应值描述
os.SEEK_SET0文件起始位置
os.SEEK_CUR1当前指针位置
os.SEEK_END2文件末尾位置

五、特殊设备常量

常量路径 (Win/Linux)用途
os.devnullnul / /dev/null空设备(丢弃输出)

使用示例

with open(os.devnull, 'w') as f:sys.stdout = f  # 禁用标准输出

六、其他实用常量

常量说明
os.linesep系统换行符(\n/\r\n
os.supports_follow_symlinks函数是否支持符号链接追踪

综合应用场景

跨平台路径处理模板

import osdef safe_join(base, *paths):"""跨平台安全路径拼接"""full_path = os.path.abspath(os.path.join(base, *paths))if not os.path.exists(full_path):os.makedirs(full_path, exist_ok=True)return full_path.replace(os.sep, '/')  # 统一为 Unix 风格路径

权限检查工具函数

def validate_permissions(filepath):"""详细权限检查"""checks = [(os.F_OK, "存在性"),(os.R_OK, "可读性"),(os.W_OK, "可写性"),(os.X_OK, "可执行性")]for flag, desc in checks:print(f"{desc}: {'√' if os.access(filepath, flag) else '×'}")

注意事项

  1. 平台差异性
    Windows 和 Linux 的常量表现不同,建议通过 os.path 模块函数代替直接操作常量

  2. 常量只读性
    所有 os 模块常量均为只读,修改会触发 AttributeError

  3. 版本兼容
    Python 3.10+ 新增 os.O_TMPFILE(Linux 专属)等常量,需注意版本差异

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com