zoukankan      html  css  js  c++  java
  • python基础知识学习总结

    python基础知识学习总结

    一、python的特点

    1、python是一种面向对象的语言,在python中一切皆对象

    2、python是一种解释性的语言

    3、python是一种交互式的语言,可以在终端进行命令行编程

    4、python是一种跨平台的语言

    5、python有强大的,丰富的标准库以及第三方库

    6、python用缩进来识别代码块(建议用4个空格)

    二、python的优缺点

    优点

    1、简单,易学,开源,免费

    2、跨平台,可移植性,可扩展性,可读性好

    3、拥有丰富的库

    缺点

    执行效率比较慢

    三、注释

    单行注释:#

    多行注释:用三引号 '''(""")或者没行都用#注释

    三引号注释其实是文档字符串,可以用__doc__查看文档字符串

    四、运算符

    类型 运算符
    算数运算符 +,-,*,/,//,%,**
    比较(关系)运算符 ==,!=,>,<,>=,<=
    赋值运算符 =,+=,-=,*=,/=,%=,//=
    逻辑运算符 adn,or,not
    位运算符 &(按位与),|(按位或),^(按位异或),~(按位取反),<<(左移),>>(右移)
    成员运算符 in,not in
    身份运算符 is,not is

    五、基本数据类型

    python有哪些基本数据类型

    不可变类型:

    数字:整型(int),浮点型(float),复数型(complex),bool

    字符串:str “string”

    元祖:tuple (1,"a",2,3)

    可变类型:

    列表:list [1,2,3,4]

    字典:dict {"a":1, "b":2}

    集合:set {1,2,3,4}

    什么是可变对象,什么是不可变对象

    此处的可变是指在内存中的对象是否可以改变,python中对象是保存在内存中的。对于不可变对象,当对对象进行操作时,如果对象的值要发生改变,并不会直接修改对象的内容,而是在内存中重新申请内存地址,创建新的对象,并将原来对象的引用指向新的对象,旧的对象的引用数量减一;对于可变对象,当对对象进行操作时,如果对象的值要发生改变,内存中并不会创建新的对象,而是会直接修改对象的值。

    六、变量

    • python中的变量是对内存中的对象的引用,相当于对象的标记或名称。

    • 如果一个变量是不可变对象的引用,如果要变量进行操作(改变变量的值),实质上是将变量的引用指向新的对象

    • 如果一个变量是可变对象的引用,如果对变量进行操作(例如列表添加新值),实质上改变的是对象的值,并不会改变引用

    • 当一个对象的引用数量为0时,这个对象就会被回收

    深拷贝和前拷贝
    浅拷贝:copy.copy(),浅拷贝时创建了一个和原对象一样的类型,但是其内容时对原对象元素的引用
    深拷贝:copy.deepcopy(),在内存中将所有数据重新建立一份。

    七、流程控制

    条件语句

    if语句

    #! /usr/bin/python3
    # -*- congfig:utf-8 -*-
    
    if 条件表达式(bool值):
        语句块
    elif 条件表达式(bool值):
        语句块
    else:
        语句块
    

    if语句执行的特点:if语句是从上往下判断的,如果在某个判断上时True,把该判断对于的语句执行后,就会忽略后边的判断语句,也就是说ifelifelse后的语句块只有一个会被执行,执行了上面的越上面的语句被执行的可能性越大

    elifelse不是必须的,有时可以只有if.....,有时可以用if...else...

    三元表达式

    值1 if 条件表达式(bool) else 值2
    #如果条件表达式结果为True则返回值1,否则返回值2
    

    循环语句

    for循环

    #! /usr/bin/python3
    # -*- congfig:utf-8 -*-
    
    for 变量名 in 可迭代对象:
        语句块(循环体)
        #continue
        #break
    else:
    	语句块
    

    while循环

    #! /usr/bin/python3
    # -*- congfig:utf-8 -*-
    
    while 条件表达式(bool值):
        语句块
        #continue
        #break
    else:
        语句块
    

    break,continue,else,pass

    break:跳出循环,直接结束循环

    continue:跳出当前循环,进入下一次循环(循环没有结束)

    else:循环后的else语句是在循环正常结束后执行的语句,如果循环中途被break语句结束则不会执行else语句

    pass:pass语句不会做任何事情,当语法上需要一条语句,但不需要做任何操作的时候可以用pass语句

    循环语句和条件语句的嵌套

    循环语句和条件语句可以相互嵌套,也可以循环套循环,条件套条件。但不建议嵌套太多层,使用嵌套时要注意各层级的缩进

    八、异常

    代码没有语法错误,但当执行程序的时候,遇到程序中有错误,程序就会停止运行并抛出一些错误信息,这就是异常

    常见的异常

    异常 描述
    ImportError 无法引入模块或包,大部分是路径问题或名称错误
    IOError 输入输出异常,大部分是无法打开文件
    TypeError 传入对象类型与要求的不符合
    NameError 使用一个还未被赋予对象的变量
    ValueError 传入一个调用者不期望的值,即使值的类型是正确的
    KeyError 尝试访问字典里不存在的键
    SystemError 一般的解释器系统错误
    KeyboardInterrupt 用户中断执行
    ZeroDivisionError 除(或取模)零

    异常处理

    python使用try....except...语句来捕获异常,并做异常处理

    try:
        # 这里写尝试执行的代码
        pass
    except 错误类型1:
        # 这里写针对错误类型1,对应的代码处理
        pass
    except 错误类型2:
        # 这里写针对错误类型2,对应的代码处理
        pass
    except (错误类型3,错误类型4):
        # 这里写针对错误类型3 和 4,对应的代码处理
        pass
    except Exception as result:
        # 这里写针对所有未知错误类型,对应的代码处理
        pass
    else:
        # 执行完try代码块后,再执行这里的代码(没有异常时,执行)
        pass
    finally:
        # 这里写无论是否有异常,最终都会执行的代码
    
    • 首先,执行 try 子句(在关键字 try 和关键字 except 之间的语句)

    • 如果没有异常发生,忽略 except 子句,try 子句执行后,执行else子句,最后执行finally子句

    • 如果在执行 try 子句的过程中发生了异常,那么 try 子句余下的部分将被忽略。如果异常的类型和 except 之后的名称相符,那么对应的 except 子句将被执行,如过异常类型没有和except之后的名称相符则执行Exception的except子句(Exception可以捕捉所有异常),except子句执行后会执行finally子句

    • else子句和finally子句不是必须的

    • except语句可以是一个,也可以时多个

    抛出异常

    raise 异常(异常描述)
    

    自定义异常

    通过创建一个新的异常类来拥有自己的异常。异常类继承自 Exception 类或者其它异常类

    九、断言

    assert(断言)用于判断一个表达式,在表达式条件为 false 的时候触发AssertionError异常

    assert 条件表达式 [, 描述]
    
  • 相关阅读:
    uni-app 发起请求,Toast 消息提示 ,跳转页面
    uView初识
    uni-app初识
    docker目录 /var/lib/docker/containers 日志清理
    Linux中使用pigz工具更快的压缩和解压文件
    docker 修改默认网段
    LayaAir提示:版本不匹配!全局tsc(2.7.2)!=VS Code的语言服务(2.1.5)。可能出现不一致的编译错误
    C++ 格式化 浮点为字符串
    安装 ta-lib
    编译 python 代码
  • 原文地址:https://www.cnblogs.com/jingxindeyi/p/13507084.html
Copyright © 2011-2022 走看看