模块

模块

一个.py文件就是一个模块,包含函数、类、语句。

好处:1、方便其他程序和脚本的导入并使用;2、避免函数名和变量名冲突;3、提高代码的可维护性和可重用性。

创建模块

新建一个.py文件,名称尽量不要与python自带的标准模块名称相同;

导入模块

import 模块名称 as [别名]

from 模块名称 import 函数/变量/类
import math
print(id(math))
print(type(math))
print(math)
2137883863544
<class 'module'>
<module 'math' (built-in)>
print(dir(math))
['__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']
print(math.pi)
3.141592653589793
from math import pi
print(pi)
3.141592653589793

以主程序形式运行

在每个模块地定义中都包括一个记录模块名称的变量__name__,程序可以检查到该变量,以确定他们在哪个模块中运行。如果一个模块不是被导入到其他程序中执行,那么它可能在解释器的顶级模块中执行。顶级模块的__name__变量的值为__main__

if __name__ == '__main__':
    pass

python中的包

包是一个分层次的目录结构,它将一组功能相近的模块组织在一个目录下。

包与目录的区别:

1、包含__init__.py文件的目录称为包

2、目录里通常不包含__init__.py文件

包的导入:

import 包名.模块名

pycharm,新建package–》新建包

pycharm,新建directory–》新建目录

python中常用的内置模块

# sys模块,与python解释器及其环境操作相关的标准库
import sys
print(sys.getsizeof(10))
print(sys.getsizeof('HELLO'))
28
54
# time模块,提供关于时间相关的函数的标准库
import time
print(time.time())
print(time.localtime(time.time()))
1616501558.825745
time.struct_time(tm_year=2021, tm_mon=3, tm_mday=23, tm_hour=20, tm_min=12, tm_sec=38, tm_wday=1, tm_yday=82, tm_isdst=0)
# os模块,提供了访问操作系统服务功能的标准库

# calendar,提供与日期相关的各种函数的标准库

# urllib,用来读取来自网上(服务器)的数据的标准库
import urllib.request
print(urllib.request.urlopen('https://www.baidu.com').read())
b'<html>\r\n<head>\r\n\t<script>\r\n\t\tlocation.replace(location.href.replace("https://","http://"));\r\n\t</script>\r\n</head>\r\n<body>\r\n\t<noscript><meta http-equiv="refresh" content="0;url=http://www.baidu.com/"></noscript>\r\n</body>\r\n</html>'
# json,用于使用JSON序列化和反序列化对象

# re,用于在字符串中执行正则表达式匹配和替换

# math,提供标准算术运算函数的标准库

# decimal,用于精确k控制运算精度、有效数字和四舍五入操作的十进制运算

# logging,提供了灵活的记录事件、错误、警告和调试信息等日志信息的功能

第三方模块的安装与使用

在命令窗口输入:

pip install 模块名
import schedule

def job():
    print('起床了--')

schedule.every(3).seconds.do(job)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值