3. python sys模块

 


3. python sys模块

1.sys.argv 获取命令行参数

import sys
print("Script name:", sys.argv[0])  # 脚本名称
print("Arguments:", sys.argv[1:])   # 其他参数

	- 案例:判断文件是否存在
#!/usr/bin/python3
#_*_coding:utf-8_*_

import os
import sys


def main():
    # sys.argv.append("")     #如果用户未传递参数会触发异常,所以先将参数设置为空
    # filename = sys.argv[1]
    for filename in sys.argv[1:]:
        if not os.path.isfile(filename):
            raise SystemExit(filename + ' does not exists ')
        elif not os.access(filename,os.R_OK):
            raise SystemExit(filename + ' is not accessible ')
        else:
            print(filename + ' is accessible ')


if __name__ == '__main__':
    main()

2.sys.path 获取python模块搜索路径

print("Module search path:", sys.path)

3.sys.modules 获取已加载模块列表

print("Loaded modules:", list(sys.modules.keys()))

4.sys.exit([status]) 退出脚本

if error:
    print("Error occurred")
    sys.exit(1)  # 非零状态码表示失败

5.sys.stdin 标准输入流

user_input = sys.stdin.readline().strip()	#交互式输入内容
print("You entered:", user_input)

6.sys.stderr 标准错误流

sys.stderr.write("Error occurred!\n")

7.sys.platform 获取当前运行的平台

print("Platform:", sys.platform)
if sys.platform.startswith("linux"):
    print("Running on Linux")

8.sys.exc_info() 获取当前异常信息(返回一个包含异常类型、异常实例和回溯对象的元组。)

try:
    1 / 0
except:
    exc_type, exc_value, exc_traceback = sys.exc_info()
    print("Exception type:", exc_type)
    print("Exception value:", exc_value)

9.sys.signals 信号处理

import signal
import sys

def signal_handler(sig, frame):
    print("Signal received:", sig)
    sys.exit(0)

signal.signal(signal.SIGINT, signal_handler)
print("Press Ctrl+C to exit")
signal.pause()
posted @   逃离这世界~  阅读(4)  评论(0编辑  收藏  举报
(评论功能已被禁用)
相关博文:
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
点击右上角即可分享
微信分享提示

目录导航