抚顺小龙

导航

 

  初识模块

命名py文件名时不能与导入模块的名称相同否则会出错

今天讲的2个模块import sys

import os
#print(sys.path) #打印环境变量
#print(sys.argv)#打印参数
#执行结果
#E:\python>python day5\s26.py 1 2 3
#['day5\\s26.py', '1', '2', '3']
#print(sys.argv[2])
#加参数后执行的结果
#E:\python>python day5\s26.py 1 2 3
#2

cmd = (os.system("dir"))

print("-->", cmd)#执行命令打印结果为0说明正常1错误,只执行命令不保存结果
cmd = os.popen("dir").read()

print("-->", cmd)#执行命令打印的是内存对象地址,不是结果。需要在调用一下.read()
#os.mkdir("new_dir")#创建目录
创建模块
寻找模块 1.从脚本当前目录查找2.标准库3.第三方库4.修改环境变量
pyc是什么东西

在说这个问题之前,我们先来说两个概念,PyCodeObject和pyc文件。

我们在硬盘上看到的pyc自然不必多说,而其实PyCodeObject则是Python编译器真正编译成的结果。我们先简单知道就可以了,继续向下看。

当python程序运行时,编译的结果则是保存在位于内存中的PyCodeObject中,当Python程序运行结束时,Python解释器则将PyCodeObject写回到pyc文件中。

当python程序第二次运行时,首先程序会在硬盘中寻找pyc文件,如果找到,则直接载入,否则就重复上面的过程。

所以我们应该这样来定位PyCodeObject和pyc文件,我们说pyc文件其实是PyCodeObject的一种持久化保存方式。

下次运行时存在文件里pyc 下次运行直接加载pyc 第一次已经保存了pyc,但是改变了原代码。首先检查是否有这个文件如果有再检查时间。pyc的更新文件时间 源代码时间最新与pyc文件时间对比。












posted on 2017-08-10 19:56  抚顺小龙  阅读(82)  评论(0)    收藏  举报