zoukankan      html  css  js  c++  java
  • 第50~52讲:模块——模块就是程序

    一 模块的基本概念

    有关模块的具体内容可参见:https://www.cnblogs.com/luoxun/p/13383993.html

    1 什么是模块

    • 容器—>对数据的封装
    • 函数—>对语句的封装
    • 类—>对方法和属性的封装
    • 模块—>模块就是程序
      • 任何.py文件都可看作一个独立的模块

    2 命名空间:从名称到对象的映射

    3 导入模块

    • import 模块名
    • from 模块名 import 函数名
      • from 模块名 import *  (强烈要求大家不要使用这种方法,除非情况及其特殊)
    • import 模块名 as 新名字
    • 举例:
      • 1 def c2f(cel):
        2     fah = cel * 1.8 + 32
        3     return fah
        4 
        5 def f2c(fah):
        6     cel =(fah - 32) / 1.8
        7     return cel
        class50_TemperatureConversion.py
      • 1 from class50_TemperatureConversion import c2f,f2c
        2 
        3 print("32摄氏度 = %.2f华氏度" % c2f(32))
        4 print("99华氏度 = %.2f摄氏度" % f2c(99))
        class50_calc.py

    二 模块的其它相关知识

    1 if __name__ = '__main__'

    • 在主程序中调用”__name__“变量,得到的是“__main__”函数;
    • 在模块中调用”__name__“变量,返回的是被导入模块的名字;
    • 举例:
       1 def c2f(cel):
       2     fah = cel * 1.8 + 32
       3     return fah
       4 
       5 def f2c(fah):
       6     cel =(fah - 32) / 1.8
       7     return cel
       8 
       9 def test():
      10     print("测试,0摄氏度 = %.2f华氏度" % c2f(0));
      11     print("测试,0华氏度 = %.2f摄氏度" % f2c(0));
      12 
      13 if __name__ == "__main__":
      14     test()
      class50_TemperatureConversion.py
      1 from class50_TemperatureConversion import c2f,f2c
      2 
      3 print("32摄氏度 = %.2f华氏度" % c2f(32))
      4 print("99华氏度 = %.2f摄氏度" % f2c(99))
      class50_calc.py
    •  具体内容可参考:https://blog.csdn.net/yjk13703623757/article/details/77918633/

    2 搜索路径

    • 写好的模块放在哪?
      • 解决方法一:放在和导入该模块的源文件所在位置相同的文件夹里
      • 解决方法二:把模块所在路径添加到python程序的搜索路径中
    • python模块的导入需要一个路径搜索的过程,该搜索路径就是一个列表/一组目录,可以通过sys模块中的path()方法查看系统本身的搜索路径;
      • 自定义模块的最佳存放目录是:site-packages文件夹;
      • 我们可以通过sys.path.append()方法把模块所在位置目录添加到python程序的搜索路径中。

    3 包(package)

    • 创建包的过程:
      • (1)创建一个文件夹,用于存放相关的模块,文件夹的名字即包的名字;
      • (2)在文件夹中创建一个__init__.py的模块文件,内容可以为空;
      • (3)将相关的模块放入文件夹中
    • 如何导入包中的模块:import 包名.模块名

    三  像极客一样思考

    1 python的设计哲学:优雅、明确、简单

       python开发者的哲学:用一种方法,最好是一种方法来做一件事儿

       实际工作中:尽量使用现成的模块

       python电池:python标准库及其里面的模块(python标准库中包含一般任务所需要的模块)

    2 学会查看python文档(需要学会英文)

    打开IDLE——help——Python Docs F1即可

    3 快速熟悉一个模块的方法

    • 在IDLE中导入模块;
    • 利用__doc__属性查看该模块的介绍文档:print(模块名.__doc__);
    • 用dir()内置方法查看模块里面定义的类、函数、方法:dir(模块名)
    • 通过__all__属性查看该模块可供外界调用的所有信息:模块名.__all__
      • 不是所有的模块都有__all__属性
      • 如果一个模块设置了__all__属性,用“from 模块名 import * ”号导入到命名空间,只有all属性列表中的信息才会被导入
    • 通过__file__属性查看该模块源代码所在位置:模块名.__file__
    • 通过help()内置函数查询想要了解的内容

    4 timeit模块小甲鱼翻译的文档链接:https://fishc.com.cn/forum.php?mod=viewthread&tid=55593&highlight=timeit

  • 相关阅读:
    this指向问题
    原生js实现的金山打字小游戏(实例代码详解)
    js实现点赞效果
    .net core部署到linux可能碰到的问题
    Linux curl命令详解 Web程序
    用十年来学编程
    JAVA的字符串拼接与性能
    PHP学习的技巧和学习的要素总结
    php实现验证邮箱格式的代码实例
    PHP页面中文乱码处理办法
  • 原文地址:https://www.cnblogs.com/luoxun/p/13843474.html
Copyright © 2011-2022 走看看