python中的模块和包

模块和包

模块

1.python源代码文件就是一个模块
2.模块中定义的变量 函数 类,都可以让别人使用,同样,可以使用别人定的
好处(别人定义好的可以直接使用,不用重复书写)
3.想要使用,必须先导入模块
4.我们自己写的代码,想要作为模块使用,代码的名字需要满足标识符的规则(由数字,字母下划线组成,不能以数字开头)

导入模块的语法

方式一

import 模块名 
# 使用模块中的内容
模块名.工具名

# 举例
import json
import random
random.randint(a,b)
json.load()
json.dump()
from 模块名 import 工具名
# 使用
工具名 # 如果是函数和类需要加括号

# 举例
from random import randint
from json import load,dump
randint()
load()
dump()

方式三【了解】

from 模块 import *  # 将模块中所有的内容导入
from random import *
from json import *

randint(a,b)
load()
dump()
对于导入的模块和工具可以使用 as 关键字给其起别名
注意:如果起别名,原来的名字就不能用了

模块的查找顺序

在导入模块的时,会现在当前目录中找这个模块,如果找到就使用,如果没找到回去系统的目录中查找,找到使用,找不到就会报错

注意点:
定义代码文件的时候,你的代码名字不能喝你要导入的模块名字相同

__name__的使用

1.每个代码文件都是一个模块
2.在导入模块时,会执行模块中的代码
3.__name__变量
	3.1 __name__变量 是 python 解释器自动维护的变量
	3.2 __name__变量,如果代码是直接运行,值是“__main__”
	3.3 __name__变量,如果代码是被导入执行,值是 模块名(即代码文件名)

在这里插入图片描述

代码练习

1.定义一个模块 tools.py
2.在模块中定义一个函数,func,输出“我是tools模块中的funn函数”
3.在模块汇总定义一个类, Dog,具有属性name,age,方法play,输出‘xx在快乐的玩耍’
4.新建一个代码文件,调用tools模块中的func函数 并创建一个Dog类的对象,调用play方法

tools code

"""
1.定义一个模块 tools.py
2.在模块中定义一个函数,func,输出“我是tools模块中的funn函数”
3.在模块汇总定义一个类, Dog,具有属性name,age,方法play,输出‘xx在快乐的玩耍’
4.新建一个代码文件,调用tools模块中的func函数 并创建一个Dog类的对象,调用play方法
"""


def func():
    print('我是tools中的func函数!')


class Dog:
    def __init__(self, name, age):
        self.name = name
        self.age = age

    def __str__(self):
        return f'name:{self.name}, age:{self.age}'

    def play(self):
        print(f'{self.name}在快乐的玩耍')


if __name__ == '__main__':
    xh = Dog('小花', 5)
    xh.play()

调用tools模块

import tools

tools.func()

xb = tools.Dog('小白', 2)
xb.play()

运行结果

我是tools中的func函数!
小白在快乐的玩耍

Process finished with exit code 0

包(package)

在python中,包是一个目录,只不过在目录存在一个文件
__init__.py  (可以是空的)
将功能相近或者相似的代码放在一起的

----------------
在paython中使用过程中不需要可以区分是包还是模块,因为使用方式是一样的

random 模块 (单个代码文件)
json 包(目录)

1.import 包名
2.alt 回车 快捷导入
  • 7
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值