python底层的一些知识

1、获取命令行的参数
import sys

# python获取参数
input_file = sys.argv[1]
output_file = sys.argv[2]

print(input_file)
print(output_file)

2、查看import导包的搜索路径
import sys
x=sys.path
print(x)

3、重新加载模块
import aa
aa.func()
# func()发生修改后,重新导入aa模块
reload(aa)
aa.func()

4、查看一个对象的引用计数
import sys
a = "hello world"
sys.getrefcount(a)

5、查看分代回收轮询检查次数
在Python中,采用分代收集的方法。把对象分为三代,一开始,对象在创建的时候,放在一代中,如果在一次一代的垃圾检查中,改对象存活下来,就会被放到二代中,同理在一次二代的垃圾检查中,该对象存活下来,就会被放到三代中。

import gc
print(gc.get_count())

# 例如(488,3,0),其中488是指距离上一次一代垃圾检查,Python分配内存的数目减去释放内存的数目,注意是内存分配,而不是引用计数的增加。
# 3是指距离上一次二代垃圾检查,一代垃圾检查的次数,同理,
# 0是指距离上一次三代垃圾检查,二代垃圾检查的次数。

6、查看分代回收阀值
gc模快有一个自动垃圾回收的阀值,即通过gc.get_threshold函数获取到的长度为3的元组,例如(700,10,10) 每一次计数器的增加,gc模块就会检查增加后的计数是否达到阀值的数目,如果是,就会执行对应的代数的垃圾检查,然后重置计数器

7、手动回收、手动阻断回收
#手动调用垃圾回收功能,这样在自动垃圾回收被关闭的情况下,也会进行回收
gc.collect()
#python默认是开启垃圾回收的,可以通过下面代码来将其关闭
gc.disable()

8、一句python将当前文件夹设置为文件服务器
python -m http.server 8080
# 浏览器中访问ip:8080

posted @ 2020-06-09 23:47  安迪9468  阅读(274)  评论(0编辑  收藏  举报