函数强化练习2(py引入模块、包)
模块其实就一些函数和类的集合文件,它能实现一些相应的功能,当我们需要使用这些功能的时,直接把相应的模块导入到我们的程序中,就可以使用了
【?】怎么去看函数?:对于列表自带的一些方法,选中函数---Ctrl+鼠标左键
【?】怎么引入不同的模块?引入第三方库呢【不清楚地方请出门右拐有百度大大】
第一步:安装
a、在线安装
(1种)win+R打开cmd --- pip install 模块名
(2种)使用国内源去进行安装 --- pip install 国内源地址 模块名
(3种)file -->setting -->project interpreter --> 右侧选择“+” --> 搜索关键字 -->选中后勾选“install to user's site package directory(路径地址) -->点击install Package (备注:有时候未必好用需要配置:Manage Repositories里加入(国内源)地址,比如豆瓣)
b、离线安装
自己去python官网或者网上找到离线安装包
(1步)解压
(2步)拷贝解压后的文件到 python安装路径
(3步)win+R打开cmd里面利用cd命令一级一级的进入到安装包文件路径(里面通常有个安装文件:setup.py)
(4步)执行;python setup.py install
【?】我的文件安装到哪里去了?
Lib ---(自带的) lib-->site-package(自己安装的)
【?】怎么用?
1:自己写的怎么导入?(除了顶级目录,其余一层一层的剥开)
# 存在一个自己写好的函数在homework.qiuhe_1下,准备调用(如果不注释掉会多执行一次,也可用if __name__=='__main__'方法解决)
相关代码:
#方法1
import homework.qiuhe_1
homework.qiuhe_1.add_num(1,101)
#方法2
from homework import qiuhe_1
qiuhe_1.add_num(1,101)
# 方法3
from homework.qiuhe_1 import add_num
add_num(1,101)
2:python自带的或者是后面安装的第三方库,怎么引用?
(1种)import 一层一层的剥开至具体模块
例子:import email.mime.python_math (python_math是子py文件,执行时候也要一层层调用)
(2种)from ... import 至少要具体到模块/包名,可直接具体到函数名 (# 推荐使用)推荐(下图)方法2--更精确
例子:from email.mime import python_math
# 假设之前已有一个写好的方法,文件存在email.mime下
【拓展点】if __name__=='__main__' (主程序的执行入口,只有当你在当前模块下面执行的时候,才会执行)
# 意思是:当.py文件被直接运行时,if _name_ == '_main_'之下的代码块将被运行;当.py文件以模块形式被导入时,if _name_ == '_main_'之下的代码块不被运行
# 当.py文件以模块形式导入时
关于python引入模块时import与from ... import的区别:
一、关于包(package)和模块(module)是概念
1、module ---(所以module就是一个.py文件)
A module is a file containing Python definitions and statements.
2、package ---(所以package就是一个包含.py文件的文件夹,文件夹中还包含一个特殊文件__.init__.py)
Packages are a way of structuring Python’s module namespace by using “dotted module names”
……
The __init__.py files are required to make Python treat the directories as containing packages;
……
二、import和from import的用法与区别
import package1 #✅ import module #✅ from module import function #✅ from package1 import module #✅ from package1.package2 import #✅ import module.function1 #❌
- 如果使用import的话,就需要使用导入的module名称来引用模块的方法,成员变量了,import module
- 如果使用from … import 就可以直接使用该模块中的方法 成员变量了,from module import
例如:
- 使用import与from import都可以导入模板
- 使用import导入模板,那么在程序中使用该模板的时候,必须使用该模板名作为前缀,如
import math print (math.floor(2.2))
- 而使用from import导入的模板之后,不需要加上前缀名即可使用,如
from math import floor floor(2.2)
关于import和from import使用及拓展可移步到:https://www.cnblogs.com/lidongaistudy/p/9598389.html