目录
2、不同的模块中,可以定义相同的变量名或函数名,执行不会有冲突;
calc模块被导入后,不执行未被指定导入的calc模块中的语句
一、模块
- 模块,Modules;
- 函数与模块的关系:一个模块中,可以包含N多个函数;
- 在python中,一个扩展名为.py的文件,就是一个模块;
使用模块的好处:
- 方便其他程序和脚本的导入并使用;
- 避免函数名和变量名冲突;
- 提高代码的可维护性;
- 提高代码的可重用性;
1、demo12.py模块中,可以包含函数,类,变量,语句
不同包中的模块A,可以是名字相同,但是功能不同;
# 模块中,可以包含函数,类,变量,语句
def fun():
pass
def fun2():
pass
class Student():
pass
a = 10
b = 20
print(a + b)
2、不同的模块中,可以定义相同的变量名或函数名,执行不会有冲突;
demo01.py
def info():
print("demo01的info()方法")
a = 10
b = 20
print(a + b)
info()
输出结果:
30
demo01的info()方法
demo02.py
def info():
print("demo02的info()方法")
a = 100
b = 200
print(a + b)
info()
输出结果:
300
demo02的info()方法
3、自定义模块
1)创建模块
- 新建一个.py文件,名称尽量不要与python自带的标准模块名称相同;
2)导入系统提供的模块
两种导入方式:
import 模块名称 [as 别名]
from 模块名称 import 函数/变量/类
第1种方式,导入模块,导入模块中全部的变量,函数等;
使用时,用模块.变量,或模块.函数;如math.pi, math.pow(2, 3)
# 导入模块
import math
print(id(math))
print(type(math)) # <class 'module'>
print(math) # <module 'math' (built-in)>
print(math.pi) # 3.141592653589793
print(dir(math))
print(math.pow(2, 3), type(math.pow(2, 3))) # 8.0 <class 'float'>
print(math.ceil(10.0001)) # 向上取整,11
print(math.floor(9.9999)) # 向下取整,9
输出结果:
1897150110032
<class 'module'>
<module 'math' (built-in)>
3.141592653589793
['__doc__', '__loader__', '__name__', '__package__', '