Python学习记录 模块

本文介绍了如何在Python中导入模块、自定义模块以及利用if __name__ == '__main__'控制代码执行。详细讲解了模块的管理、导入方式、函数和变量的使用,以及模块知识__all__的使用技巧。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

2022.08.20 DAY36

模块
  • 只要是以.py为后缀的文件,都可以称为模块。

  • 模块中包含:

    • 变量
    • 函数
    • class 面向对象(类->对象)
    • 可执行代码
  • 模块的好处就是管理方便。

模块的使用
  • 如何使用模块?
    • 自定义模块
    • 导入模块:
      • import 模块名1, 模块2…
    • 导入之后如何使用?
      • 模块名.类
      • 模块名.变量
      • 模块名.函数名(参数)
    • 导入模块中相关的数据
      • from 模块 import 变量,函数,类
    • 导入之后如何使用?
      • 可以直接使用
自定义模块的定义及使用
  • 问题:在导入模块的时候,模块中的代码会被执行一遍。

  • 解决方案:在自定义模块中,新增控制代码。

      if __name__ == '__main__':
          模块执行代码
    

测试模块MyMath:

"""
自定义一个模块
    实现数学的四则运算
    两个数的加减乘除运算
"""

def add(a, b):
    """
    加法运算
    :param a:
    :param b:
    :return: 两个数的和
    """
    return a + b

def sub(a, b):
    """
    减法运算
    :param a:
    :param b:
    :return: 两个数的差
    """
    return a - b

def mul(a, b):
    """
    乘法运算
    :param a:
    :param b:
    :return: 两个数的积
    """
    return a * b

def div(a, b):
    """
    除法运算
    :param a:
    :param b:
    :return: 两个数的商
    """
    if b != 0:
        return a / b
    else:
        print("除数无意义...")
        return 0

if __name__ == '__main__':
    a = 10
    b = 2
    print("a,b的和为:%g"%add(a, b))
    print("a,b的差为:%g"%sub(a, b))
    print("a,b的积为:%g"%mul(a, b))
    print("a,b的商为:%g"%div(a, b))

测试代码:

# 1.导入模块的方式
# import random
# result = random.randint(1, 100)
# print(result)


# import MyMath
# if __name__ == '__main__':
#     a = 10
#     b = 2
#     print("a,b的和为:%g"%MyMath.add(a, b))
#     print("a,b的差为:%g"%MyMath.sub(a, b))
#     print("a,b的积为:%g"%MyMath.mul(a, b))
#     print("a,b的商为:%g"%MyMath.div(a, b))


# 2.导入模块中相关数据的方式
# from random import randint
# result = randint(1, 100)  # 直接使用
# print(result)

from MyMath import add, sub, mul, div
if __name__ == '__main__':
    a = 10
    b = 2
    print("a,b的和为:%g"%add(a, b))
    print("a,b的差为:%g"%sub(a, b))
    print("a,b的积为:%g"%mul(a, b))
    print("a,b的商为:%g"%div(a, b))
模块知识__all__的使用
  • from 模块 import 变量,函数,类
  • 问题:使用这种方法导入模块的所有功能,一个一个填写,比较麻烦。
  • 解决方案:
    • from 模块 import *
  • 默认导入模块中所有的功能
    • 如果在模块中手动添加全局变量__all__ = []
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值