• 变量作用域及面向对象编程


    Python基础

    二维码(Quick Respone Code)

    也称为快速响应码,它是由两种不同颜色的小方格构成的二维平面图案,它就是将一个数据(通常是字符串)编码为二维码图像,扫描程序可以快速地识别出二维码图像数据(即解码)

    变量作用域(Scope)问题

    变量的作用域:变量可以被访问的代码范围

    按照作用域不同,变量可以分为局部变量和全局变量(Global)

    Python解释器在搜索被引用变量是遵守LEGB规则

    L:Local,即函数内部作用域

    E:Enclosing,外层嵌套函数作用域

    G:Global,全局作用域

    B:Built-in,内建作用域

    函数除了可以嵌套调用,还可以嵌套定义

    闭包(Enclosing)

    函数内部定义的局部变量在函数返回后继续保留

    要想实现闭包必须嵌套定义函数

    版本控制系统

    Version Control System,简称VCS,主要解决文件版本管理的问题,分为集中式VCS的和分布式VCS

    集中式VCS:SVN等

    分布式VCS:GIT等

    掌握GIT的常用用法

    GIT中三个重要的概念:工作区、暂存区、仓库

    git log 查看日志

    git reflog 查看对仓库所有改变的操作信息

    git status 查看工作区状态

    git reset --hard HEAD 返回上一次的更改

    面向对象编程

    Oriented Object Programming,简称OOP,是一种编程思想,OOP认为构成程序的基本单元为对象(实例),不同对象之间的交互就实现了程序的各种功能

    面向过程编程认为函数是构成程序的基本单元,一组函数的顺序执行就实现了程序的各种功能

    OOP是编程语言发展的趋势

    OOP是通过类和对象实现的 ;对象(Object)也称为实例(instance),任何一个具体的事物都是一个对象,类(Class)是具有相同属性(Attribute,即数据)和方法(Method,即行为)的所有对象的集合或抽象

    从数据类型的角度看,类其实是一种自定义数据类型,而对象则是属于该数据类型的一个具体的数据

    访问限制

    以一个或两个下划线开头命名属性和方法表示是私有的,即只能在类中访问它们,不要在类外访问它们,虽然Python没有提供语法规则保证这一点,但我们要自觉遵守!

    属性(Attribute)

    分为实例属性(Instance Attribute)和类属性(Class Attribute),实例属性属于对象所有,每个对象都有自己独立的一份属性,只能通过对象名访问,而类属性属于类所有,所有对象共享一份,可以通过类名和对象名都可以访问

    在实际开发中,尽量避免实例属性和类属性同名

    面向对象编程三大特性:封装、继承、多态

    继承(Inheritance)

    在一个类(即父类,基类,超类)的基础上定义一个新的类(子类,派生类),子类将会无条件获得父类所有功能,Python中所有类都必须直接或间接继承于object类,即object类是所有类直接或间接父类

    继承体现出IS A的关系

    同名覆盖(Override):子类定义了和父类同名的属性或方法

    super内置函数:用于在子类中调用父类中被同名覆盖的方法

    isinstance内置函数:判断一个对象是否是某个类的对象

    单继承(Single Inheritance):父类只有一个

    多(重)继承(Multiple Inheritance):一个类的直接父类有两个或多个

    基本数据类型本质其实就是个类

    python如何遍历文件夹,获取文件名

     

    扩展

    1.Python中除了object类没有父类其余都有

    2.windows下面以点号开头并不是隐藏文件,而是文件的属性为隐藏

    3.乱码产生的根本原因:编码解码不一致,建议统一使用utf-8

    4.windows下面换行是 ,Linux下面换行是

    5.vim自动格式化 ctrl+v进入可视化 按两个=即可

    6.二进制的换算!!

     

  • 相关阅读:
    Spring Boot构建RESTful API与单元测试
    Spring Boot中使用Swagger2构建强大的RESTful API文档
    Intellij IDEA 一些不为人知的技巧
    Spring中@Controller和@RestController之间的区别
    Spring 中的default-lazy-init="true" 和 lazy-init="true"
    SpringMVC处理JSON
    建立一个简单的SpringMVC程序
    SpringMVC处理静态资源
    <mvc:annotation-driven/>与<mvc:default-servlet-handler/>之间的一个问题
    Spring AOP 简单理解
  • 原文地址:https://www.cnblogs.com/yanruizhe/p/11240339.html
Copyright © 2020-2023  润新知