专栏首页python3python学习之旅(十六)

python学习之旅(十六)

Python基础知识(15):模块

1、可以把模块想象成导入Python以增强其功能的扩展

2、任何程序都可以作为模块导入

3、导入模块并不意味着在导入的时候执行某些操作,它们主要用于定义变量、函数和类等

#hello1.py
def hello():
    print("Hello,world!")

hello()

  >>> import hello1   Hello,world!

  >>> hello1.hello()   Hello,world!

4、为了方便代码重用,把程序模块化

5、有些模块被导入时会运行,为了避免这种情况,使用'__name__'变量,“告知”模块本身作为程序运行还是导入

 注:name前面和后面为两个下划线

>>> __name__
'__main__'

>>> hello1.__name__
'hello1'

在“主程序”中,变量'_name_'的值是'_main_',而在导入的模块中,这个值就被设定为模块的名字

为了让模块测试代码更好用,可以将其置在if语句中

#hello2.py
def hello():
    print("Hello,world!")

def test():
    hello()

if __name__=="__main__":
    test()


>>> import hello2
>>> hello2.hello()
Hello,world!

6、模块的作用域

一般情况下,函数和变量是公开的(public)。如果我们想要某个函数或变量只在这个模块中使用,需要在函数名或变量名前面加前缀'__',表示这个函数或变量是私有的(private)

#hello3.py
def __hello_1(name):
    return "Hello,%s!"%name

def __hello_2(name):
    return "Hey,%s,your angle."%name

def greeting(name):
    if len(name)>4:
        return __hello_1(name)
    else:
        return __hello_2(name)


import hello3
>>> hello3.greeting("Alice")
'Hello,Alice!'
>>> hello3.greeting("Jack")
'Hey,Jack,your angle.'

7、安装第三方模块

在windows系统下安装Python的第三方库,以便导入某些模块

根据自己安装的Python版本选择相应的包管理工具pip或Anaconda进行安装

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 【python】redis模块

    windows下载地址:https://github.com/MSOpenTech/redis/releases

    py3study
  • python变量,输入、输出、判断、循环

    声明变量 name = 'ajune' 变量赋值 name = 'ajune' name1 = name

    py3study
  • python 2 :包管理

    py3study
  • Memcached·Redis缓存的基本操作

    Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载。它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态、...

    Wyc
  • python flask web开发实战 页面消息提醒 常用

    from flask import Flask, render_template, session, redirect, url_for, flash @ap...

    用户5760343
  • redis缓存数据库

    NoSQL(NoSQL = Not Only SQL ),意即“不仅仅是SQL”,泛指非关系型的数据库,随着互联网web2.0网站的兴起,传统的关系数据库在应...

    菲宇
  • Oracle通过substr,instr,translate函数的组合获取日期分割表

    写这一篇文章也是因为项目从SQL数据库导入Oracle数据库中遇到的问题,主要是我们要导入的数据有年月的分割表的查询。

    Vaccae
  • Echart在Openlayers的应用-航班的炫光特效

    在前两篇文章中讲到了echart在openlayers2中的应用,地图统计图与热力图的实现,在本文中介绍openlayers中结合echart实现航班的炫光特效...

    lzugis
  • 动手实现一个AMD模块加载器(三)

    在上一篇文章中,我们的AMD模块加载器基本已经能够使用了,但是还不够,因为我们没有允许匿名模块,以及没有依赖等情况。实际上在amd的规范中规定的就是define...

    用户1515472
  • [python]父类、子类、子类实例属性

    py3study

扫码关注云+社区

领取腾讯云代金券