今天用一个高效学习编程的顶级思维,讲解python模块的正确使用姿势。

你在学习编程的时候可能会遇到这样的问题,自己看书的时候明明已经看懂了,感觉自己也记住了。但是当你自己开始敲代码的时候脑子空空,写什么都费劲。

这是为什么?

因为你没有掌握正确的学习方法,现在我来告诉你如果学习才能提高效率。

先上过程,答案在最后。

1、模块是个什么东东?

所有别人写的或者你写的 .py 文件。

就这么简单,它就是一个包含了定义和声明的文件。

知道就好了。

需要你记住的是在 import 加载的模块中还分为几个类别:

1)、python编写的代码文件

2)、使用C或者C++编译得库或者dll

3)、多个模块组成的包

4)、内置模块(c编写并连接到python解释器)

2、为什么要使用模块

你自己编写了一段漂亮的代码,只需要传递几个参数进去就能帮你实现大量的计算。因为你熟悉这段代码的使用方式,每当遇到类似问题的时候就想使用它。

思考一下,你会怎么处理这种情况?

可以肯定是的,你会在第一时间想到,我只需要几秒钟的复制粘贴就把弄过来了。

很好!这是被允许的。

接下里你又需要用到自己写的别的代码或者别人写的很实用的代码,继续复制粘贴。

很好!用不了几次,你正在写的解决问题的代码已经被七七八八的代码给搅乱了,自己都看得头疼有没有!

模块的概念就是为了解决这个问题诞生的。

程序越来越大,功能也越来越多,你把它分成一个一个的.py文件看起来就很舒服。

无论是单个的文件,还是这个整体的功能被包成一个模块,在你写其他文件的时候用import 的方式引用过来。

实现了功能的多次高效率运用。

3、该如何使用模块呢?

3.1 import

1)、使用pycharm 建立一个 import_pro.py 文件,并输入如下代码

python怎么打开文件(python模块的正确打开姿势)(1)

2)、同级目录下建立一个新的py文件 fibo-test,输入代码并运行

python怎么打开文件(python模块的正确打开姿势)(2)

知识点:模块可以包含可执行的语句和函数定义,他们在第一次被import的时候被执行

3)、每个模块都是独立的名称空间,你不用担心自己写的变量和模块中的变量起冲突

python怎么打开文件(python模块的正确打开姿势)(3)

4)、你还可以为你导入的模块起个炫酷的名字

python怎么打开文件(python模块的正确打开姿势)(4)

5)、你还可以在一行中引入多个模块

比如: import re,os,sys

3.2 from ...... import ......

1)、直接把需要使用的函数引用过来,这样你就可以不用打点调用,看起来又舒服了不少。

python怎么打开文件(python模块的正确打开姿势)(5)

2)、如果当前文件存在与被引用模块中相同的函数名,则会发生当前覆盖引用

python怎么打开文件(python模块的正确打开姿势)(6)

3)、也可以使用 as (这就不用上图了吧)

4)、你可能会联想到下面这种方式

from import_pro import *

不建议使用这种方式,因为你也不知道自己都把什么给导入到你的文件中了,直接放弃这种方式就好。

5)、模块的循环引用

我在a中引用b中的函数,在b中引用a中的函数

可以,但请放弃这种方式。

当你被一个Bug折腾得死去活来的时候,才想起来老师当年说过这样不好!

3.3 模块的搜索路径

内存中已经加载的模块->内置模块->sys.path路径中包含的模块

需要注意的是:我们自定义的模块名不应该与系统内置模块重名

4、模块还有哪些注意事项?

4.1 模块名区分大小写

foo.py 与 FOO.py 代表的是两个模块

4.2 标准模块

Python 附带了标准模块库,详见 Python 标准库参考手册

4.3 dir()函数

内置函数 dir() 用于查找模块定义的名称。返回结果是经过排序的字符串列表:

>>> import import_pro

>>> dir(import_pro)

读者自行在编辑器中录入并执行,结果更为直观

python怎么打开文件(python模块的正确打开姿势)(7)

----------------人工分割线----------------

经过上面的演示,相信聪明的你已经找到了提高学习效率的规律。

答案很简单,就是提问!

如果你还没有掌握自我提问的技巧,请不要着急。

按照下面几个问题进行回答,已经能帮助你解决问题,当我们熟练以后再更新它。

1、XXX的概念是什么?

2、使用XXX的好处是什么?

3、如何使用XXX?

4、使用XXX还有哪些注意事项?

----------------人工分割线----------------

每次面对一个新问题都把这四个问题当作必答题进行解答,经过一段时间的使用,你会发现这些知识逐渐变成你自身的能力了。