Python__模块(工具-系统)__psutil / sys / argparse / distutils

文章介绍了Python库psutil用于获取系统资源使用情况和进程管理,同时讲解了sys模块的系统接口功能,argparse自定义命令工具,以及distutils模块用于打包和发布Python模块。
摘要由CSDN通过智能技术生成

psutil(简介)

获取系统运行的进程和系统利用率(包括CPU、内存、磁盘、网络等)信息。


psutil(了解)

psutil是一个跨平台库(http://pythonhosted.org/psutil/)

它主要用来做系统监控,性能分析,进程管理。

它实现了同等命令行工具提供的功能。


psutil(参考代码)

程序运行的内存占比

import subprocess, psutil, gc

mem1 = psutil.virtual_memory()
print(f'某程序前-内存已使用:{mem1.used}')
print(f'某程序前-内存剩余:{mem1.free}')
print(f'某程序前-内存百分比:{mem1.percent}')

app1 = subprocess.Popen(r'C:\Windows\write.exe')
app2 = subprocess.Popen(r'C:\Windows\winhlp32.exe')
app3 = subprocess.Popen(r'C:\Windows\write.exe')

mem2 = psutil.virtual_memory()
print(f'某程序后-内存已使用:{mem2.used}')
print(f'某程序后-内存剩余:{mem2.free}')
print(f'某程序后-内存百分比:{mem2.percent}')

app1.kill()
app2.kill()
app3.kill()

gc.collect()#启用垃圾回收模式
mem3 = psutil.virtual_memory()
print(f'GC回收后-内存已使用:{mem3.used}')
print(f'GC回收后-内存剩余:{mem3.free}')
print(f'GC回收后-内存百分比:{mem3.percent}')

sys(简介)

Python解释器交互的一个接口,主要围绕着Python程序的一些辅助工具。如:控制Python程序的运行,更改Python环境...


sys(参数列表)

sys.exit()

退出程序

默认为0,表示正常退出,也可以为1,表示异常退出。

【例子】sys.exit(0) 或 sys.exit(1)

sys.path.append(path)

调用Python文件

【例子】

# 添加路径( AG.py放置在电脑桌面)

import sys

sys.path.append('C:/Users/Administrator/Desktop')

# 调用文件

# import AG

sys.argv

实现从程序外部向程序传递参数

sys.path

包含输入模块的目录名列表

sys.version获取Python解释器版本
sys.exc_info()返回异常信息三元元组
sys.getdefaultencoding()获取系统当前编码,默认为utf-8
sys.setdefaultencoding()设置系统的默认编码
sys.getfilesystemencoding()获取文件系统使用编码方式,默认是utf-8
sys.modules以字典的形式返回所有当前Python环境中已经导入的模块
sys.copyright当前Python的版权信息
sys.getrefcount(object)返回对象的引用数量
sys.getrecursionlimit()返回Python最大递归深度,默认1000
sys.getsizeof(object[, default])返回对象的大小
sys.getwindowsversion()返回当前windwos系统的版本信息
sys.executablepython.exe的绝对路径
sys.prefix当前python的安装路径
sys.exec_prefix基础python环境的安装路径
sys.base_exec_prefix基础python环境的安装路径
sys.builtin_module_namespython解释器中的所有模块
sys.stdlib_module_names包含标准库模组名称字符串的冻结集合
sys.hexversion整数版本号
sys.is_finalizing()#如果Python解释器正在退出则为True

argparse(简介)

自定义python命令。


argparse(了解)

【自建命令工具】

终端 :python 文件 命令 命令功能

【例子】

终端 :python demo.py --help 

# help命令(查看文档介绍)


argparse(参考代码)

简单例子

import argparse

parser = argparse.ArgumentParser(description="【文档描述】")
parser.add_argument("-f", "--function", help="【-f或--function命令 关于函数功能的使用方法】")
parser.add_argument("-i", "--info", help="【-i或--info命令 关于文档的注释】")

args = parser.parse_args()
if args.function == "function":
    print(">>>输入了function命令")
elif args.info == "info":
    print(">>>输入了info命令")
else:
    pass

distutils(简介)

自定义Python模块。


distutils(了解)

【使用方法】

打包Python'模块,然后发布,安装使用。

【模块的安装】

源码包:python setup.py install

在线安装:pip install 包名(linux) / easy_install 包名(window)


distutils(参考代码)

自定义模块(简化版)

from distutils.core import setup
setup(
    name='test_md',               # 安装的模块名
    version='1.0',                # 版本
    author='AG',                  # 作者
    author_email='@xxx.com',      # 邮箱
    py_modules=['test'],          # 使用的模块名
)
# @使用方法 /
# 1.新建test.py文件 ->  内容(随便写个函数)
# 2.新建setup.py文件 -> 内容(上面代码加入)
# 3.两个文件同处一个目录下->当前目录->终端:python setup.py sdist
# 4.(安装模块) 终端:python setup.py install
# 5.(测试):import test #test.test()
# --------------------------------- /

自定义模块(详细版)

# -*- encoding: UTF-8 -*-
from setuptools import setup
setup(
    name='testFunc',                        # 安装包名 注释:尽量与packages属性的项目文件夹名相同
    version='0.1',                          # 版本信息
    author='AG',                            # 作者
    author_email='xxx@gmail.com',           # 作者邮箱地址
    description='关于程序的描述',            # 程序的简单描述
    long_description='关于程序的详细描述',   # 程序的详细描述
    keywords='关于程序的关键词',             # 程序的关键字列表
    packages=['testFunc'],                  # 要打包的项目文件夹
    include_package_data=True,              # 自动打包文件夹内所有数据
    zip_safe=True,                          # 设定项目包为安全,不用每次都检测其安全性
    install_requires=[                      # 需要安装的依赖包
        'docutils>=0.3',
        'requests',
    ],
)
# @流程 /
# 1.新建setup.py文件 -> 内容(上面代码加入)
# 2.新建文件夹 -> func.py , init.py
# 3.setup.py 所在目录 ->
# 终端:python setup.py sdist    进行打包
#     :python setup.py build    构建目录
#     :python setup.py install  安装包
# ---------------------------------------/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

vip飞梦

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值