放暑假了,明天就回家,今天晚上写一篇,后面几天没机会写了.....
模块初识:
模块:就是将一堆功能封装在一起,直接引入使用
模块又称之为库,分为两大类:
标准库:不需要安装可以直接引用的库
第三方库:必须安装才能使用的库
看下都有哪些库.在Python的安装目录下的lib目录:
这里的就是标准库.
在Lib目录下的site-packages目录就是第三方库,我就不截图了...
我们接下来看两个模块:sys和os
sys:
我们来看一下sys下的path功能
1 # Author:学无止境 2 3 import sys; 4 5 print(sys.path);
我们调用模块的功能用的是"."
为了看着方便我给换行一下...
path功能,保存的是Python的环境变量(注:是Python的,不是系统环境变量),py引用模块或者内部调用的时候的一些路径
我们可以直接引用的模块,文件肯定存储在上面的路径其中...
在看sys的另一个功能:argv
argv是一个列表,简单的看一下.
1 # Author:学无止境 2 3 import sys; 4 5 #print(sys.path); 6 7 print(sys.argv);
可以看到我上面执行了两次,分别是有参数和没有参数,执行的结果也不一样,这就是一个列表,那我们如何取出其中的值呢?
比如我这里要取出路径.那么在代码中只需要修改sys.argv[0],这里argv后面跟一个中括号,注意:里面的值并不是要打印的值.它就好像一个数组一样,0只是他的下标,第一个是0,第二个是1,依次类推.计算是从0开始的.我们这边写个0,打印出来的结果自然就是当前路径.
OK,我们这个模块暂时就说这两个功能,其他可以自行查手册.
接下来看今天的另一个模块:0S
OS:与系统相关的一些.
例如:我们用os执行系统命令:
1 1 # Author:学无止境 2 2 3 3 import os; 4 4 5 5 os.system("dir");
通过system功能就可以做到执行系统命令,我们能否吧值保存给一个变量?
试试:
1 import os; 2 3 cmd_result = os.system("dir"); 4 5 print(cmd_result);
可以看到这里有一个0,得知:system直接将执行结果打印到屏幕,而保存给变量的只不过是执行成功与否,成功:0,失败:1
你可以自己随便写一个错误的命令试试打印出来的结果
那我非要保存给变量怎么办?不保存我睡不着啊.别着急,用popen功能.
执行结果这是啥玩意啊?这个是保存在内存中的对象地址。那我要他有什么用呢?通过这个地址得到值。怎么得到?read()功能
可以看到在popen后面加上一个read(),就可以得到他的值了,简单理解就是,执行的结果保存在内存的某一个地方,通过read()对他进行读取.
OS也就到这里吧,以后这个模块肯定是会细说的.下面给大家做一个小小的例子:命令执行.
代码:
1 # Author:学无止境 2 3 import os; 4 5 print("退出请输入n or N"); 6 while True: 7 cmd = input("请输入命令:"); 8 if cmd == ‘n‘ or cmd == ‘N‘: 9 print("退出命令执行!!!"); 10 break; 11 os.system(cmd); 12
os的mkdir功能:os.mkdir("文件夹名");这个我就不说了,就是新建文件夹的
我们在文章的最开始有说到第三方库,那我们是不是也能写一个呢?
我这里写一个用户登陆的界面看一下
这个没毛病吧?我们在新建一个文件来引入login.py
这样就行了,是不是觉得特扯淡,觉得我在骗你?可惜了,这就是模块,和php中的文件包含是一样的
注:我这里的路径是相对路径,大家可以回去看一下sys.path的值,第一个就是执行文件所在的路径,还有其他的环境变量路径,如果你吧login.py放到非环境变量中的路径,那么就会提示报错模块找不到.OK,模块的简单知识就写到这,没事的时候不妨多看看py的模块,看看大神们风骚的代码。。。。。