Python 总结之 import本质

编程入门 行业动态 更新时间:2024-10-27 09:38:33

Python 总结之 import<a href=https://www.elefans.com/category/jswz/34/1768327.html style=本质"/>

Python 总结之 import本质

了解import之前,我们得先了解什么是模块。

模块和包

模块:本质就是以.py结尾的python文件 (文件名:test.py,对应的模块名:test),是用来从逻辑上组织python代码(变量,函数,类,逻辑:模块的本质是为了实现一个功能)。

包:本质就是一个目录(必须有__init__.py文件),是用来打包多个模块(.py文件),如果想要导入一个包就是解释(执行)这个包下的__init__.py文件。

导入模块

导入模块主要有两种方式:

1. import model_name

2. from model_name import *

导入方法:

导入指定方法:from module_name import abc

导入模块中的多个方法: from module_name import abc123,abc456

导入模块中的方法:import module_name.abc

导入模块中的变量:import module_name.name

导入多个模块:import module1_name, module2_name

import 本质

我们在test.py中import bitcoin这个模块,其本质意义就是将bitcoin模块中的代码解释一遍(运行一遍)然后赋值给一个变量,这个变量就是bitcoin

from bitcoin import * 相当于将bitcoin模块中的方法给解释了一遍然后放入test.py文件中。

 

注意点

1. 模块路径:

>>>import sys

>>>print (sys.path)

结果打印的是默认路径的列表,导入模块时,会按照列表顺序寻找模块。找不到会报错。

因为路径是个列表,所以是可以添加路径的 sys.path.append(),当然导入的路径不是永久的。

2.模块名重用

注意在起名字的时候,不要与库中模块的名字重复,否则当你导入模块的时候可能会导入的.py文件是错误的。

3.导入模块的优化

使用import bitcoin时,text.py中的每一个函数都需要先去找bitcoin模块,然后再去找comp_bitcoin()这个方法,被调用一次就需要找一次,如果调用次数多的话,就需要大量的重复性工作,这样运行程序相对会比较慢。

这里使用from方法来导入,相当于把这个comp_bitcoin()导入到text.py文件中了,这样在调用comp_bitcoin()这个函数的时候,直接就是从本程序中直接调用,相比上一种方式运行速度会快。

4.动态模块导入时两种import的区别

 

运行代码时会发现:当send.py修改have_girl的值时,两个导入方式的结果是不同的,原因是因为

import  girl 这个可以当做是引用

from girl import have_girl这个可以当做深拷贝

关于引用,浅拷贝和深拷贝 之后会有详解。

更多推荐

Python 总结之 import本质

本文发布于:2023-07-28 18:08:39,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1270679.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:本质   Python   import

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!