• 面向对象编程、模块


    面向过程编程思想:
    核心是过程二字,过程即流程,指的是做事的步骤:先什么,再什么,后什么
    基于该思想编写程序好比在设计一条流水线
    优点:复杂的问题流程化、进而简单化
    缺点:可扩展性差
    面向过程的编程思想应用场景:
    1.不是所有的软件都需要频繁更迭,比如编写脚本
    2.即便是一个软件需要频繁更迭,也并不代表这个软件所有的组成部分都需要一起更迭

    #1.def 用于定义有名函数
    # func=函数的内存地址
    def func(x,y):
    return x+y
    print(func)
    # 2.lambda用于定义匿名函数
    print(lambda x,y:x+y)
    #3.调用匿名函数
    # 方式一:
    res=(lambda x,y:x+y)(1,2)
    print(res)
    # 方式二:直接舍弃
    func=lambda x,y:x+y
    res=func(1,2)
    print(res)
    # 4.匿名用于临时一次调用的场景:更多将匿名配

    1、什么是模块?
    模块就是一系列功能的集合体,分为三大类
    I:内置的模块
    II:第三方的模块
    III:自定义的模块
    一个python文件本身就一个模块,文件名m.py,模块名叫m

    ps:模块有四种形式
    1 使用python编写的.py文件

    2 已被编译为共享库或DLL的C或C++扩展

    3 把一系列模块组织到一起的文件夹(注:文件夹下有一个__init__.py文件,该文件夹称之为包)

    4 使用C编写并链接到python解释器的内置模块

    2、为何有用模块
    I:内置与第三的模块拿来就用,无需定义,这种拿来主义,可以极大地提升自己的开发效率
    II:自定义的模块
    可以将程序的各部分功能提取出来放到一模块中为大家共享使用
    好处是减少了代码冗余,程序组织结构更加清晰
    3、如何用模块

    # import foo
    # 1、首次导入模块会发生3件事
    # 1.1、执行foo.py
    # 1.2、产生foo.py的名称空间,将foo.py运行过程中产生的名字都丢到foo的名称空间中
    # 1.3、在当前文件中产生的有一个名字foo,该名字指向2中产生的名称空间
    # 之后的导入,都是直接引用首次导入产生的foo.py名称空间,不会重复执行代码
    # 2.1强调1:模块名.名字,是指名道姓地问某一个模块要名字对应的值,不会与当前名称空间中的名字发生冲突
    # 2.2强调2:无论是查看还是修改操作的都是模块本身,与调用位置无关
    # 3、可以以逗号为分隔符在一行导入多个模块
    # 建议如下所示导入多个模块
    # import time
    # import foo
    # import m
    # 不建议在一行同时导入多个模块
    # import time,foo,m
    # 4、导入模块的规范
    #I. python内置模块
    #II. 第三方模块
    #III. 程序员自定义模块
    #5、import 。。。 as 。。。
    #6、模块是第一类对象
    #7、自定义模块的命名应该采用纯小写+下划线的风格
    #8、可以在函数内导入模块
    # def func():
    # import foo

  • 相关阅读:
    java 多线程学习(一)
    解决安卓微信浏览器刷新问题
    sublime text3 配置tab为4个空格
    React 错误Each child in an array or iterator should have a unique “key” prop
    git filename to long问题解决
    JS获取URL参数 方法
    CSS超出2行省略号
    JS判断是否为安卓orIOS
    获取移动设备真实宽高
    微信分享朋友圈监听(PHP)
  • 原文地址:https://www.cnblogs.com/mayrain/p/12576016.html
Copyright © 2020-2023  润新知