1、模块的概念
在 Python 中,⼀个 .py ⽂件就可以称之为 ⼀个模块(Module )
在一个模块中可以定义函数、类、语句、变量等等(数量可以是多个),一个项目中有多个模块
类中有类属性、实例方法、静态方法、动态方法和类方法
'''一个python文件在刚被创建的时候就是一个模块,虽然里面啥都没有'''
def fun(): #模块中的函数
pass
def sun():
pass
class animals: #模块中的类
animals_dog_name='旺财' #类变量
def __init__(self,name,weight): #初始化方法
self.name=name
self.weight=weight
@classmethod #动态方法
def cm(self):
print('用的是动态方法')
@staticmethod #静态方法
def sm():
print('用的是静态方法')
def eat(self): #类方法
pass
a=10 #模块中的变量
b=20
print(a+b) #模块中的语句
这些多个模块组成了一个整体,称作Python程序
2、模块的好处
(1)方便其他程序和脚本的导入并使用
(2)避免函数名变量名冲突
(3)提高代码的可维护性
(4)提高代码的可重复调用性
3、 创建模块 直接新建一个python文件,其就是一个模块
4、导入模块
(1)import 模块名 [as 别名]
import math #导入关于数学运算的模块
print(id(math))
print(type(math))
print(math)
print(math.pi) #输出圆周率π的值
print('----------------------------')
print(dir(math)) #查看math模块中能够使用的方法
num=math.pow(4,3) #计算4的三次方
print(num,type(num))
print(math.ceil(6.4512)) #寻找临近该数的最大的整数
print(math.floor(4.683)) #寻找临近该数的最小的整数
29703552
<class 'module'>
<module 'math' (built-in)>
3.141592653589793 <class 'float'>
----------------------------
['__doc__', '__loader__', '__name__', '__package__', '__spec__', 'acos', 'acosh', 'asin',
'asinh', 'atan', 'atan2', 'atanh', 'ceil', 'copysign', 'cos', 'cosh', 'degrees', 'e',
'erf', 'erfc', 'exp', 'expm1', 'fabs', 'factorial', 'floor', 'fmod', 'frexp', 'fsum',
'gamma', 'gcd', 'hypot', 'inf', 'isclose', 'isfinite', 'isinf', 'isnan', 'ldexp',
'lgamma', 'log', 'log10', 'log1p', 'log2', 'modf', 'nan', 'pi', 'pow',
'radians', 'remainder', 'sin', 'sinh', 'sqrt', 'tan', 'tanh', 'tau', 'trunc']
64
(2)如果只想使用某一个模块中的某一种方法,则使用语句from 模块名 import 方法名
from math import pi
print(pi)
(3)导入自定义模块 :在文件中写好方法/函数/类后,创建新文件,右键自定义模块所在的文件夹,选项中找到Mark Dictionary as,复选栏中选择Sources Root,这时就可以使用自定义模块了
'''这时就可以使用我自定义的模块了'''
import calc
print(calc.add(6,3))
print(calc.add(4,1.5))
calc.div(5,0)
print(calc.div(69,3))
from calc import add
print(add(4,9))