模块--python廖雪峰

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的信息 

~在命令行下输入python,看到anaconda的信息标题

~可以直接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!
???貌似也不行了

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值