目录

1、 Python中模块的导入

2、数学库-math

3、时间库-time

4、随机数库-random

5、集合扩展库-collections


Python中的模块其实就是一个python文件,该文件中可以定义多个类函数变量等。模块名称就是不包含后缀的文件名。通常同一文件内的代码具有高内聚特点,不同文件之间的代码具有低耦合特点,不同模块间可相互调用,从而实现代码的复用

1、 Python中模块的导入

不同模块间相互调用的前提是要先导入相关内容,此时需借助import关键字,语法如下:

  • import 模块名导入整个模块,此时可根据模块名.内容进行访问。
  • import 模块名 as 别名导入整个模块,并给模块取个别名,可通过别名.内容进行访问。
  • from 模块名 import 函数或类从模块中导入某一部分内容,此时可直接访问内容

使用import语句导入模块时,将会按照 sys.path 变量的值搜索文件,如果没找到,则程序报错。可通过sys.path查看搜索目录,通常包含当前目录Python安装目录等,搜索顺序按照目录在列表中的顺序(一般来说当前目录优先级最高)。

如果需要访问的模块不在默认的搜索目录中,则需要手动将其添加到搜索目录中去。如果在多个模块中包含相同的内容,此时访问时可用模块名.内容进行区分,否则根据导入的顺序,取最后导入的

python导入shap Python导入数学库_机器学习

2、数学库-math

math库中定义了一些常见的数学常量数学计算公式,例如自然常数e圆周率pi正弦函数对数函数距离函数平方根函数等。

python导入shap Python导入数学库_机器学习_02

python导入shap Python导入数学库_机器学习_03

3、时间库-time

time 模块主要提供各种关于日期、时间的类和函数。Python中时间通常有三种表现形式:结构化时间时间戳字符串时间。这三种形式之间通过一定函数可相互转换。

  • 结构化时间用一个元组表示,元组中包含9部分内容,年份月份(1-12)、日期(1-31)、小时(0-23)、分钟(0-59)、秒数(0-59)、星期(0-6,星期一为0)、一年中的天数(1-366)、是否夏令时(-1, 0,1)
  • 字符串时间:按照用户自定义的时间格式显示;
  • 时间戳:从1970年1月1日0时0分0秒开始到现在的秒数,是一个浮点数。

python导入shap Python导入数学库_python_04

python导入shap Python导入数学库_编程语言_05

以字符串形式显示时间或者将字符串解析为时间元组时,需要通过一些特殊的字符进行控制。这些特殊字符作用如下,注意大小写。其他内容必须原样输入,既不能省略,也不能修改,否则解析出错

python导入shap Python导入数学库_数据分析_06

python导入shap Python导入数学库_python_07

4、随机数库-random

实际应用中,经常需要从一组数据中随机抽样,或者将一组数据随机打乱顺序,从而使得实验结果更具说服性,此时需要借助于random库,random库中主要的方法及其含义如下。

python导入shap Python导入数学库_python导入shap_08

python导入shap Python导入数学库_python_09

5、集合扩展库-collections

collections 模块扩展了Python中内嵌的容器:dict、list、set和 tuple等,提供了一些具有特殊功能的子类。 例如:CounterdefaultdictOrderedDict 等。

defaultdict 是字典 dict 的子类,支持所有的字典操作,用于给所有的关键字赋默认值此时访问字典中不存在的键时,返回默认值,而不会直接报错

python导入shap Python导入数学库_编程语言_10

Counter是字典 dict 的子类,支持所有的字典操作,用于对可迭代对象中的元素计数。它是一个键值对的集合,键为元素值为该对象出现的次数

python导入shap Python导入数学库_python_11

Counter类中常见的方法及其作用如下:

  • most_common(n)返回出现次数最多的前n个元素,如果n省略,则返回所有元素,按照出现的次序降序排列。返回结果为一个列表,列表中每个元素为元组,由键和对应的值构成;
  • elements()返回一个迭代器,每个元素将出现指定次数。元素按首次出现的顺序返回。如果一个元素的计数值小于1,则会忽略
  • subtract(可迭代对象):从已有对象中减去相应数量的元素,最终结果中有些元素出现的数量可能为负数
  • update(可迭代对象):在已有对象基础上加上相应数量的元素

此外,Counter对象还支持加法(+)减法(-)并集(|)交集(&)等操作。

小小练习题

python导入shap Python导入数学库_机器学习_12