标准库模块——sys模块
1 2 | import sys print (sys.path) |
path是环境变量用。
该命令可以显示python下的所有存放库的路径。必须要存在目录下的其中一个才行。
python的标准库一般会保存在这个文件内:
C:\Users\Administrator\AppData\Local\Programs\Python\Python36\Lib
python的第三方库,一般会存放在下面的地址内:
C:\Users\Administrator\AppData\Local\Programs\Python\Python36\Lib\site-packages
1 2 | import sys print (sys.argv) |
如果需要添加一个环境变量,就需要加:
1 2 3 4 5 | import os import sys BASE_DIR = print (os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) sys.path.append(BASE_DIR) form conf import settings #从conf目录下来调用settings文件 |
argv,是可以打印出来文件的路径。
可以对文件进行标记,为后期调用做准备。
在pycharm保存的为绝对路径。
['I:/python/Python/day1/1.py']
在cmd中,使用的是相对路径。
必须查看到自己的文件目录所在地后,输入该命令。
例如:
如果在pycharm中定义了该文件为2,那么再取文件时,输入2即可。
import sys
print(sys.argv)
print(sys.argv[2])
stdout,表示一行内输出。
如果想要在一行内不断出现的话,那么就需要一行内输出。
1 2 3 4 5 6 7 | import sys import time for i in range ( 20 ): sys.stdout.write( '#' ) sys.stdout.flush() time.sleep( 1 ) |
1 2 | import sys print (sys.getdefaultencoding()) |
sys.getdefaultencoding(),可以显示出当前使用的字符编码是什么。
sys.version
获得python解释程序的版本信息
sys.getrefcount()
引用计数器,查看该内存地址一共被引用多少次。
1 2 3 4 | import sys a = [ 11 , 22 , 33 ] print (sys.getrefcount(a)) #这里的2是表示,a引用过一次,sys又引用一次。 |
不重要的:
1 | sys.getrecursionlimit() 查看最大的递归数 |
sys.modules
显示所有以导入的模块,也可以指定模块进行提取。(以key,value形式)
1 2 3 4 5 6 7 8 9 | import sys import test print (test) #显示test的模块名称 print (sys.modules) #可以找到所有的以导入的模块 print (sys.modules[ 'test' ]) #找到相对应的模块。 #显示效果是一样的 #<module 'test' from 'D:\\python\\test.py'> #<module 'test' from 'D:\\python\\test.py'> |
配合getattr进行自有对象的调用。
1 2 3 | #如果想要调用自己的 a = print ( '111' ) getattr (sys.modules[__name__], 'a' ) #自己对象的导入。 |
sys.platform
返回操作系统平台名称
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core GC计划阶段(plan_phase)底层原理浅谈
· .NET开发智能桌面机器人:用.NET IoT库编写驱动控制两个屏幕
· 用纯.NET开发并制作一个智能桌面机器人:从.NET IoT入门开始
· 一个超经典 WinForm,WPF 卡死问题的终极反思
· ASP.NET Core - 日志记录系统(二)
· 在外漂泊的这几年总结和感悟,展望未来
· 博客园 & 1Panel 联合终身会员上线
· 支付宝事故这事儿,凭什么又是程序员背锅?有没有可能是这样的...
· https证书一键自动续期,帮你解放90天限制
· 在 ASP.NET Core WebAPI如何实现版本控制?