• 复习列表,模块


    上节课复习

    1,  列表生成式

     l=[i for i in range(5) if i>3]
    #2,生成器表达式
    def func():
        for i in range(5):
            if i>3:
                yield i
    g=func()

    g=(i for i in range(5)if i>3)
    next(g)

    3,什么是模块
    模块就是一系列功能的集合体
    优点:1,重复用功能 2,拿来主义,提高开发效率
    4,如何使用模块
    区分:
       执行文件
       被导入模块
    在执行文件中用模块
    import module
    首次导入模块
     1,创建一个模块的名称空间
     2,执行模块内的代码,将产生的名字存放于模块的名称空间中
     3,在执行文件的名称空间中拿到一个名字module,该名字指向模块的名称空间

    注意:要调用模块名称空间中的名字,语法
    module,模块名称空间的名字
    优点:,点名道姓的引用某个模块中的名字,不会与当前执行文件名称空间中的重复名字发生冲突
    缺点:需要加前缀:module

    from module import x
                    首次导入模块,与import导入模块的前两件事一模一样
                    只是第三件事不同:
                        1、直接拿到x(属于执行文件的名称空间),x是指向module中的x的值,

                     x=10
                     x

                    优点:
                        不用加前缀,直接引用模块中的名字,代码更加精简
                    缺点:
                        容易与当前执行文件名称空间中的重复名字发生冲突



                    from 模块名 import *
                    代表将模块中所有的名字拿到当前名称空间中

    5、区分py文件的两种用途

    if __name__ == "__main__":
        文件被当做脚本执行时执行的代码
    else:
        文件被当做模块导入时执行的代码

    6、模块的搜索路径
    内存 - -》内置 - --》sys.path

    import mudule

    强调:
    sys.path的第一个值是当前执行文件的文件夹

    软件开发目录,把功能细分到每一个文件中,然后在调用就简单很多

     

  • 相关阅读:
    完美串(区间dp)
    Brackets(区间dp)
    Eureka的高可用
    在Spring Boot中使用 @ConfigurationProperties 注解
    Spring Boot干货系列:(四)开发Web应用之Thymeleaf篇
    luogu3707 相关分析 (线段树)
    luogu3380/bzoj3196 二逼平衡树 (树状数组套权值线段树)
    bzoj4504 K个串 (优先队列+主席树)
    bzoj4336 骑士的旅行 (树链剖分+multiset)
    suoi37 清点更多船只 (卡空间线段树)
  • 原文地址:https://www.cnblogs.com/maojiang/p/8719749.html
Copyright © 2020-2023  润新知