zoukankan      html  css  js  c++  java
  • 从入门到自闭之Python自定义模块

    自定义模块

    1. 定义:一个文件就是一个模块(能被调用的文件,模块就是一个工具箱,工具就是函数)

    2. 作用:

      1. 将代码文家化管理,提高可读性,避免重复代码
      2. 拿来就用(避免重复造轮子),python中类库比较多,提升开发效率
    3. import导入时会做三件事:

      # import test  # 只能将整个工具箱拿来
      # a = test.t1
      # b = test.t2
      #
      # a()
      # b()
      
      1. 将.py文件中的所有代码读取到当前文件
      2. 在当前文件开辟空间
      3. 等待被调用
    4. import导入同一个模块名时,只执行一次

    5. import 和from 文件名较长时,都可以用as起别名,目的是为了防止内置模块名与自定义模块名重复,自定义模块会覆盖内置模块

    6. 导入模块名时后面不能加后缀

    7. 每个模块都有一个独立的内存空间,理论上是全局空间

    8. from :推荐使用from

      # from test import t1 as t # 从test工具箱中将t1这个工具拿过来
      #
      # def t1():
      #     print("高级工程师")
      # t1()
      
    9. import 和 from的区别:

      1. from只能执行导入的工具
      2. import能后执行整个模块中所有的功能
      3. from容易将当前文件中定义的功能覆盖
      4. from 比import灵活
    10. import只能导入当前文件夹下的模块

    11. import 后边不能加点操作 ***

    12. import 和 from 使用的都是相对路径

    13. 飘红不代表报错

    14. sys:和python解释器交互的接口

      1. sys.path.append(r"被导入的模块路径")
        • 内存 > 内置 > 第三方> 自定义
      2. sys.path.insert(0.r"被导入的模块路径")
        • 内存 > 自定义 > 内置 > 第三方
    15. 模块的两种用法

      1. 当做模块导入:使用import 和 from, __ name __ 返回的是当前模块名
      2. 当作脚本执行:__ name __ 返回 ' __ main __'
    16. 只有py文件当做模块被导入时,字节码(pyc)才会进行保留

    17. 导入模块时遇到的坑:

      1. 注意自己的定义的模块名字与系统名字冲突
      2. 注意自己的思路---循环导入时建议导入模式放后边一点,需要的地方,不要互相查找内容
    18. 不建议一行导入多个

    19. from test import * 意思是:拿整个工具箱过来

      1. 通过 __ all __ 控制要导入的内容
      2. __ all __ = ["a","func"] 控制 import *
  • 相关阅读:
    Eclipse正确导入第三方project
    面试的基础_01字符串反向操作
    一个简单的实现了智能虚拟女友—图灵机器人
    Notepad++去除代码行号的几种方法
    fastjson将bean转成字符串时首字母变小写问题
    2015第34周二能收发邮件但不能打开网页解决方法
    2015第34周一
    2015第33周日
    2015第33周六
    构建自己的顾问团
  • 原文地址:https://www.cnblogs.com/heyulong1214/p/11528113.html
Copyright © 2011-2022 走看看