1.基本概念
2.使用模块
调用内置的sys模块,编写hello模块
#!/usr/bin/env python3
#-*- coding:utf-8 -*-
#前两行为标准注释,让hello.py文件在unix、Linux。Mac上运行,.py文件使用标准UTF-8编码
'a test module' #模块的文档注释,任何模块代码的第一个字符串都是文档注释
_author_='Carrie Ruan'#使用__author__变量把作者写进去,这样当你公开源代码后别人就可以瞻仰你的大名
import sys
#导入模块,利用sys变量访问sys模块的所有功能
def test():
args=sys.argv
#sys中有一个argv的变量,用用list存储了命令行的所有参数。argv至少有一个元素,因为第一个参数永远是该.py文件的名称,例如:
#运行python3 hello.py获得的sys.argv就是['hello.py'];
#运行python3 hello.py Michael获得的sys.argv就是['hello.py', 'Michael]
if len(args)==1:
print('Hello,world!')
elif len(args)==2:
print('Hello,%s!' % args[1])
else:
print('Too many arguments!')
if __name__=='__main__':
test()
#把特殊变量__name__置为__main__,而如果在其他地方导入该hello模块时,if判断将失败,也就是只有作为主程序运行时,才运行,如果只是其他人想要导入或者调用你的函数,if判断失败
~在命令行执行:
$ python3 hello.py
Hello, world!
$ python hello.py Michael
Hello, Michael!
~在交互行执行:
1.先导入hello模块
import hello
2.再调用test()函数
hello.test()
作用域:private和public
公开变量和函数:public,可以被直接引用
非公开函数和变量:private,形如:_XXX_,不应该被直接引用
def _private_1(name):
return 'Hello, %s' % name
def _private_2(name):
return 'Hi, %s' % name
def greeting(name):
if len(name) > 3:
return _private_1(name)
else:
return _private_2(name)
公开greeting函数,内部private的函数细节不用去管,一般用于封装代码和抽象
外部不需要引用的函数全部定义成private,只有外部需要引用的函数才定义为public。
3.安装第三方模块
安装方法:2个
【1】:用包管理工具pip:考虑兼容性,一个一个安装
命令:在命令行中输入:pip install ***(库名)
常用第三方库:MySQL驱动程序,Web框架Flask,科学计算Numpy
【2】anaconda
基于Python的数据处理和科学计算平台,内置了许多第三方库,装上Anaconda,相当于把数十个第三方模块自动安装好了,非常简单易用。
~在命令行下输入python,看到anaconda的信息
![](https://i-blog.csdnimg.cn/blog_migrate/a9a3353270169200e5deb1b384d2978c.png)
~可以直接import numpy(anaconda平台已经内置)
模块搜索路径
1.加载模块时,Python在指定路径下搜索.py文件,搜索不到报错
>>> import mymodule
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named mymodule
2.默认路径:当前目录,已安装的内置模块和第三方模块
>> import sys
>>> sys.path
['', '/Library/Frameworks/Python.framework/Versions/3.6/lib/python36.zip', '/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6', ..., '/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages']
3.添加路径:直接修改sys.path
>>> import sys
>>> sys.path.append('users/ruanqing/desktop/python基础--刘老师/20190411')
注意点:从文件属性里边复制路径时候一定注意,路径原来是\,要全部改成/
此时,便可以调用hello module了
>>> import hello
>>> hello.test()
Hello,world!
???貌似也不行了