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

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

  今天用一个高效学习编程的顶级思维,讲解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 文件,并输入如下代码

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

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

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

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

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

  比如: import re,os,sys

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

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

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

  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)

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

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

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

  答案很简单,就是提问!

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

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

  1、XXX的概念是什么?

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

  3、如何使用XXX?

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

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

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

推荐阅读