python基础(十三)-------模块与包

目录

13.1 模块

13.1.1 模块导入

13.1.2 隐藏成员

13.1.3 模块变量

13.1.4 分类

13.2  包(package)

13.2.1 包的导入

13.2.2 __init__.py


13.1 模块

定义:包含一些数据、函数、类的文件,通常是以.py结尾

模块和模块之间如何联系?

13.1.1 模块导入

方式一

import 模块名

作用:将某模块整体导入到当前模块中

使用:模块名.成员

本质:使用变量名module01关联模块地址

方式二

from 模块名 import 成员

本质:将指定模块的成员导入到当前模块的作用域中

方式三

from 模块名 import *

*表示全部

本质:将指定模块的所有成员导入到当前模块作用域中

ps:导入模块会直接执行另一个模块里面的普通代码

注意:导入进来的成员不要与当前模块成员名称相同,如果相同就采用就近原则

as 取别名
from module01 import f as f1
from module02 import f as f2
from module03 import f as f3
f1() # module 01中的
f2() # module 02中的
f3() # module 03中的

import module01 as m01
m01.f1()

13.1.2 隐藏成员

模块中以 下划线(_)开头的属性,不会被导入,通常称这些成员为隐藏成员

隐藏成员:不能通过  from 模块 import * 方式导入

ps:隐藏成员可以通过其他形式调用

# 模块内部用的
def _f2():
    print('模块1的f2')

13.1.3 模块变量

__file__ : 模块对应的文件路径名
    
__name__ : 模块自身的名字,可以判断是否是主模块
    
    注意:当此模块作为主模块(第一个运行的模块)运行时,__name__ 绑定 '__main__' ,当作为其他模块导入时 , 存储的 模块名

    主模块叫做:__main__
    非主模块叫做:真名

    
在别人家喊得就是名字在自己加喊得就是称呼;
导入别人家的模块,就是别人家的名字


python的__main__的作用:
    1.一个python文件,如果是作为程序来运行时,那么__name__的值为__main__,如果是作为模块来运行,它__name__的值就为模块名
    2.把一些非必要的代码,放到main函数里面
    main的标准语法
    if __name__ == '__main__':
        print('我是作为程序运行的')
        
        
    快速写法
    	pycharm输入main,然后按tab键或者回车

13.1.4 分类

模块可以分四类

# 1 内置模块:在解析器的内部可以直接使用

# 2 标准库模块:安装Python时已安装且可以直接使用
	time,random,re.....
# 3 第三方模块:通常是开源的,需要是自己安装
	如何装?
    1. 通过 pip install 模块名
    	requests : pip install requests
    2. 通过 Pycharm内置的功能
    
# 4 用户自己编写的模块 (可以作为别的第三模块)

在python中使用命令行

pip国内源

1)清化大学
PIP源地址:https://pypi.tuna.tsinghua.edu.cn/simple
2)阿里云
PIP源地址:http://mirrors.aliyun.com/pypi/simple/
3)豆瓣
PIP源地址:http://pypi.douban.com/simple/
4)中国科学技术大学
PIP源地址:http://pypi.mirrors.ustc.edu.cn/simple/
5)华中科技大学
PIP源地址:http://pypi.hustunique.com/
  
建议都用这种
命令: pip install 模块名 -i 原地址

13.2  包(package)

python大致结构

    模块
        函数
            语句

包的定义:将模块以文件夹的形式进行分组管理,其实就是管理模块的

包的作用:让一些相关的模块组织的在一起,使逻辑结构更加清晰。

13.2.1 包的导入

语法
from 包.模块 import 成员
# import 搜索路径(优先是找当前目录)
import package01.packge02.m02 as m02

m02.f1()

13.2.2 __init__.py

文件夹和包唯一区别:__init__.py
__init__.py 是包内必须存放的文件,会在包加载时被自动调用


__init__.py 里面放一些关于包内模块的使用说明

标准库

sys os

time , random

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值