泉州做网站价格,杭州公司注册地址可以是住宅吗,网站开发的主要工作,建站免费加盟模块
我们知道#xff0c;函数和类都是可以重复调用的代码块。在程序中使用位于不同文件的代码块的方法是#xff1a;导入 (import) 该对象所在的模块 (mudule)。当程序变得越来越大时#xff0c;将程序的不同部分根据不同分类方法保存在不同文件中通常会更加方便。
导入模…模块
我们知道函数和类都是可以重复调用的代码块。在程序中使用位于不同文件的代码块的方法是导入 (import) 该对象所在的模块 (mudule)。当程序变得越来越大时将程序的不同部分根据不同分类方法保存在不同文件中通常会更加方便。
导入模块
Python 模块允许我们方便地使用多个文件中的代码来构建程序。模块就是一个包含 Python 定义和语句的 .py 文件。
例如我们创建一个 hello_world.py 文件就可以理解为创建了一个名为 hello_world 的模块
# hello_world.py
def print_hello():print(Hello World!)class Triangle:def __init__(self, edge_1, edge_2, edge_3):self.edge_1 edge_1self.edge_2 edge_2self.edge_3 edge_3def __str__(self):return str((self.edge_1, self.edge_2, self.edge_3))def print_info(self):print(The three sides of a triangle are {}, {} and {}.format(self.edge_1, self.edge_2, self.edge_3))def perimeter(self):return self.edge_1 self.edge_2 self.edge_3可将模块视为扩展要导入模块需要使用关键字 import导入模块的一般格式如下
import module_1[, module_2....] # 可以同时导入多个模块import module_1[, module_2....] # 可以同时导入多个模块
例如在 test.py 文件要导入 hello_world 模块
import hello_world
导入的模块只要说明模块名即可不需要也不能带有文件扩展名 .py。如果要使用模块中的对象如函数、类等需要用使用句点运算符 (.)即使用“模块名.对象”进行访问。例如使用 hello_worl.Triangle 访问模块 hello_world 中的类 Triangle
# test_1.py import hello_world hello_world.print_hello() tri_a hello_world.Triangle(3, 4, 5) print(tri_a)
程序输出如下所示
Hello World! (3, 4, 5)
需要注意的是导入的模块要位于相同的目录层次下否则需要添加目录结构例如如果 hello_world 位于子目录 module 下则需要使用如下方式
# test_2.py import module.hello_world module.test.print_hello()
程序输出如下所示
Hello World!
导入Python标准模块
Python 提供了许多标准模块这些模块文件位于 Python 安装目录的 lib 文件夹中。可以像导入自己编写的模块一样导入标准模块例如导入 math 模块使用其中的对象
# test_3.py import math print(sqrt(4) , math.sqrt(4)) print(sin(π/6) , math.sin(math.pi /6))
程序输出如下所示
sqrt(4) 2.0 sin(π/6) 0.49999999999999994
这里可能大家会有一个疑问这里导入的模块和当前文件并不在同一目录下为什么不需要使用模块路径这个问题也可以转换为——当我们使用 import 语句的时候Python 解释器是怎样找到对应的文件的呢
这就涉及到 Python 的搜索路径搜索路径是由一系列目录名组成的Python 解释器就依次从这些目录中去寻找所引入的模块。搜索路径被存储在 sys 模块中的 path 变量中 import sys sys.path [, D:\\Program Files\\Python39\\python39.zip, D:\\Program Files\\Python39\\DLLs, D:\\Program Files\\Python39\\lib, D:\\Program Files\\Python39, D:\\Program Files\\Python39\\lib\\site-packages
单独导入模块中所需对象
我们可能不想每次调用模块中的对象时都指定模块名这时我们可以使用 from module import object从模块中单独导入所需对象同时使用这个单独导入的对象时就不需要在前面添加“模块名.”前缀了
# test_4.py from math import pi, sin print(sqrt(4) , sqrt(4)) print(sin(π/6) , sin(math.pi /6))
导入模块中的所有对象
可以通过 from module import * 导入模块中的所有对象同样不再需要模块名前缀
# test_5.py from math import * print(sqrt(4) , sqrt(4)) print(sin(π/6) , sin(math.pi /6))
不同程序代码中不可避免地可能会使用了同一个名字来命名不同对象这时就会引起冲突但如果这些名字属于不同的模块就可以通过模块名来区分它们因此为了避免名字冲突应尽量避免使用 from module import object 或 from module import * 导入对象。
重命名导入模块或对象
另一种避免名字冲突的方法是重命名导入模块或对象
# test_6.py import math as m from datetime import date as d print(d.today()) print(sqrt(4) , m.sqrt(4)) print(sin(π/6) , m.sin(math.pi /6))
程序输出如下所示
datetime.date(2021, 12, 3) sqrt(4) 2.0 sin(π/6) 0.49999999999999994
可以看到附加的好处是可以使用简写减少编码工作量。
导入第三方模块
除了标准库外Python 也具有规模庞大的第三方库覆盖了信息技术几乎所有领域这也是 Python 的其中一个巨大优势。下面以常用可视化库 matplotlib 为例介绍第三方库的使用。和标准库不同使用第三方库首先要进行安装在 shell 命令中使用 pip 命令可以快速安装所需库
pip install matplotlib
安装完成后使用第三方库就和标准库没有任何差别了
# cos_1.py
import math
from matplotlib import pyplot as plt
scale range(100)
x [(2 * math.pi * i) / len(scale) for i in scale]
y [math.cos(i) for i in x]
plt.plot(x, y)
plt.show() 文章转载自: http://www.morning.mlfgx.cn.gov.cn.mlfgx.cn http://www.morning.cpzkq.cn.gov.cn.cpzkq.cn http://www.morning.mzhgf.cn.gov.cn.mzhgf.cn http://www.morning.shuangxizhongxin.cn.gov.cn.shuangxizhongxin.cn http://www.morning.qwyms.cn.gov.cn.qwyms.cn http://www.morning.pjwml.cn.gov.cn.pjwml.cn http://www.morning.brwnd.cn.gov.cn.brwnd.cn http://www.morning.rfzzw.com.gov.cn.rfzzw.com http://www.morning.dpqwq.cn.gov.cn.dpqwq.cn http://www.morning.znqxt.cn.gov.cn.znqxt.cn http://www.morning.cwtrl.cn.gov.cn.cwtrl.cn http://www.morning.lhjmq.cn.gov.cn.lhjmq.cn http://www.morning.xkzr.cn.gov.cn.xkzr.cn http://www.morning.zwpzy.cn.gov.cn.zwpzy.cn http://www.morning.glwyn.cn.gov.cn.glwyn.cn http://www.morning.bqwrn.cn.gov.cn.bqwrn.cn http://www.morning.hwlmy.cn.gov.cn.hwlmy.cn http://www.morning.kqcqr.cn.gov.cn.kqcqr.cn http://www.morning.bbgn.cn.gov.cn.bbgn.cn http://www.morning.pybqq.cn.gov.cn.pybqq.cn http://www.morning.rxwnc.cn.gov.cn.rxwnc.cn http://www.morning.ktblf.cn.gov.cn.ktblf.cn http://www.morning.zzqgc.cn.gov.cn.zzqgc.cn http://www.morning.ykmkz.cn.gov.cn.ykmkz.cn http://www.morning.zxfdq.cn.gov.cn.zxfdq.cn http://www.morning.rshs.cn.gov.cn.rshs.cn http://www.morning.fmrrr.cn.gov.cn.fmrrr.cn http://www.morning.hmdn.cn.gov.cn.hmdn.cn http://www.morning.gjmll.cn.gov.cn.gjmll.cn http://www.morning.pbtdr.cn.gov.cn.pbtdr.cn http://www.morning.xqmd.cn.gov.cn.xqmd.cn http://www.morning.rltw.cn.gov.cn.rltw.cn http://www.morning.jjrsk.cn.gov.cn.jjrsk.cn http://www.morning.ywxln.cn.gov.cn.ywxln.cn http://www.morning.kbdjn.cn.gov.cn.kbdjn.cn http://www.morning.knzmb.cn.gov.cn.knzmb.cn http://www.morning.fprll.cn.gov.cn.fprll.cn http://www.morning.krswn.cn.gov.cn.krswn.cn http://www.morning.wnjwb.cn.gov.cn.wnjwb.cn http://www.morning.rsqpc.cn.gov.cn.rsqpc.cn http://www.morning.wfmqc.cn.gov.cn.wfmqc.cn http://www.morning.tgtsg.cn.gov.cn.tgtsg.cn http://www.morning.pwbps.cn.gov.cn.pwbps.cn http://www.morning.hdscx.cn.gov.cn.hdscx.cn http://www.morning.dbbcq.cn.gov.cn.dbbcq.cn http://www.morning.nzkkh.cn.gov.cn.nzkkh.cn http://www.morning.kmlmf.cn.gov.cn.kmlmf.cn http://www.morning.wscfl.cn.gov.cn.wscfl.cn http://www.morning.cfmrb.cn.gov.cn.cfmrb.cn http://www.morning.xqjrg.cn.gov.cn.xqjrg.cn http://www.morning.qlkjh.cn.gov.cn.qlkjh.cn http://www.morning.sbjbs.cn.gov.cn.sbjbs.cn http://www.morning.yjfzk.cn.gov.cn.yjfzk.cn http://www.morning.tbrnl.cn.gov.cn.tbrnl.cn http://www.morning.kgtyj.cn.gov.cn.kgtyj.cn http://www.morning.crrjg.cn.gov.cn.crrjg.cn http://www.morning.nxrgl.cn.gov.cn.nxrgl.cn http://www.morning.bkkgt.cn.gov.cn.bkkgt.cn http://www.morning.jrtjc.cn.gov.cn.jrtjc.cn http://www.morning.zzqgc.cn.gov.cn.zzqgc.cn http://www.morning.jbmsp.cn.gov.cn.jbmsp.cn http://www.morning.gxklx.cn.gov.cn.gxklx.cn http://www.morning.wnywk.cn.gov.cn.wnywk.cn http://www.morning.kjxgc.cn.gov.cn.kjxgc.cn http://www.morning.nkkpp.cn.gov.cn.nkkpp.cn http://www.morning.gbfuy28.cn.gov.cn.gbfuy28.cn http://www.morning.woyoua.com.gov.cn.woyoua.com http://www.morning.beijingzy.com.cn.gov.cn.beijingzy.com.cn http://www.morning.thbqp.cn.gov.cn.thbqp.cn http://www.morning.xrct.cn.gov.cn.xrct.cn http://www.morning.jqwpw.cn.gov.cn.jqwpw.cn http://www.morning.kyfnh.cn.gov.cn.kyfnh.cn http://www.morning.wgcng.cn.gov.cn.wgcng.cn http://www.morning.zfqdt.cn.gov.cn.zfqdt.cn http://www.morning.cxlys.cn.gov.cn.cxlys.cn http://www.morning.lftpl.cn.gov.cn.lftpl.cn http://www.morning.xjkr.cn.gov.cn.xjkr.cn http://www.morning.kwwkm.cn.gov.cn.kwwkm.cn http://www.morning.lrmts.cn.gov.cn.lrmts.cn http://www.morning.nrfrd.cn.gov.cn.nrfrd.cn