一、模块化编程
(1)导入模块
-
#导入整个sys模块
-
import sys
-
#获取程序全路径名称
-
print(sys.argv[0])
-
-
#给sys模块起别名
-
import sys as s
-
print(s.argv[0])
-
-
#导入两个模块
-
import sys as s,os as o
-
print(s.argv[0])
-
#输出平台上的路径分隔符
-
print(o.sep)
-
-
#从sys模块中导入argv成员变量
-
from sys import argv as v,winver as w
-
#导入sys模块所有成员
-
from sys import *
(2)定义模块module1.py 文件
-
"""
-
这是第一个模块说明,该模块包含以下内容:
-
my_book 变量
-
say_hi(user)函数
-
user 用户类
-
"""
-
-
print('这是module1')
-
my_book = '疯狂python讲义'
-
-
-
def say_hi(user):
-
print('%s 您好,欢迎学习python' % user)
-
-
-
class user:
-
def __init__(self, name):
-
self.name = name
-
-
def walk(self):
-
print('%s 正在走路' % self.name)
-
-
def __repr__(self):
-
return self.name
-
-
-
#只有在运行当前py文件时__name__ 才会变为__main__,增加if判断防止其他的py文件
-
#在import当前模块的时候执行测试代码
-
if __name__ == '__main__':
-
test_my_book()
-
test_say_hi()
-
test_user()
module1.py 的模块名就是 moudule1,使用模块可以实现很好的代码复用,导入导出模块
二、加载模块
三、使用包
四、查看模块内容
五、常见模块
(1)sys模块
-
#常见的模块
-
import sys
-
l = [e for e in dir(sys) if not e.startswith('_')]
-
print(l)
动态修改模块加载路径
(2)os模块
(3)random模块
(4)time模块
(5)json支持模块
(6)正则表达式re模块
(7)容器相关类
set集合有如下两个特征
set不记录元素的添加顺序,元素不允许重复
set集合是可变容器,程序可以改变容器中的元素。与set对应的还有f'rozenset集合,是set的不可变版本,它的元素是不可变的
deque双端队列
(8)python的堆操作: heapq模块
(9)collections下的容器支持
-
# 定义三个map
-
a, b, c = {'ko': 90}, {'go': 93}, {'sw': 89}
-
m = ChainMap(a,b,c)
-
-
print(m)
-
print(m['ko'])
(10)函数相关模块
itertools模块
functools 模块
文章来源: blog.csdn.net,作者:血煞风雨城2018,版权归原作者所有,如需转载,请联系作者。
原文链接:blog.csdn.net/qq_31905135/article/details/100985390