前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python 模块

Python 模块

作者头像
AiDBA宝典
发布2019-09-29 16:06:57
5620
发布2019-09-29 16:06:57
举报
文章被收录于专栏:小麦苗的DB宝专栏

今天小婷儿给大家分享的是Python 模块。

Python 模块

Python 3 模块

概念:模块是一个包含所有你定义的函数和变量的文件,其后缀名是.py。

模块可以被别的程序引入,以使用该模块中的函数等功能,这也是使用 python 标准库的方法。

一 、模块分类

1、内置模块:python提供的标准模块,如random 、time 、os等等;
2、第三方模块:别人写好的模块,我们可以拿过来用;

1):一般来说,第三方库都会在Python官方的pypi.python.org网站注册

2):但是使用第三方模块,需要先安装,需要使用pip命令(第三方包管理工具)

3、自定义模块:我们自己写的模块
1)创建模块:其实就是新建一个py后缀的源文件,如果在另外的py文件中使用,导入方式一样;

a:创建自己的模块时,要注意:模块名要遵循Python变量命名规范,不使用中文、特殊字符;

b:模块名不要和系统模块名冲突

2)模块的作用域:表示模块中的内容能否被其他模块直接访问,

一般称为public(公有的,公开的)和private(私有的,非公开的);[类似_xxx和__xxx这样的函数或变量就是非公开的(private),不应该被直接调用。之所以说不应该,是因为Python并没有一种方法可以完全限制访问非公开的函数或变量(其他模块可以直接访问这些'_'开头的变量和函数),但是,从编程习惯上不应该调用非公开的内容函数。]

3)__name__

当直接运行该模块(当做主程序调用)时,__name__的值是__main__,当该模块被其他程序import的时候,模块的__name__就是该模块名,所以每个我们经常会在模块下面写这样一个if判断,里面来写测试代码:

if __name__ == '__main__':

....

4) __all__

如果通过 from 模块名 import * 导入的时候,只能导入该模块最上面通过__all__规定的列表里面的函数、变量或者类;

5)__pycache__文件夹

当第一次导入某个模块的时候,系统会自动生成这样一个文件夹,里面存放的是模块的缓存字节码文件,下次再使用的时候,如果该模块没有改变,那么直接使用这个缓存文件

6)包

a:包:如果多个模块功能类似,可以将这些模块放到同一个目录下面,方便管理,这个目录就称之为包

b:包里面一般情况都有个文件:__init__.py,这个文件可以是空的,只是告诉编译器这个目录不是普通目录,

是python里面的一个包

二、导入方式

1)import 模块名,...

如果这样导入模块,调用模块中提供的函数等内容的时候,需要加上模块名

如 time.sleep()

例:如果我们在 modulee.py 的文件下,写入下面的 def 语句:

def pyxxt(x):

print(x)

而我们想在其它 py 文件中用到相同作用的 pyxxt() 函数,我们可以:

例:

import modulee

module.pyxxt('life is short,we need python!')

结果:life is short,we need python!

2)from 模块名import 名称1,...

如from time import sleep,表示从time模块中导入进来sleep函数,

那么在使用sleep函数的时候,直接调用

例:

from modulee import pyxxt

pyxxt('life is short,we need python!')

结果:life is short,we need python!

3)起别名

给模块起别名,如import random as ran,以后再代码中只能使用别名ran,

不能使用原名random

4)模糊导入

如from random import *,将random中所有函数全部导入进来,不推荐这样使用

例:

from modulee import *

pyxxt('life is short,we need python!')

结果:life is short,we need python!

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2018-05-19,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 DB宝 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Python 3 模块
    • 一 、模块分类
      • 二、导入方式
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档