• 第四章:运算符与表达式——参考手册笔记


    表达式:用于返回值

    表达式由运算符与运算对象构成

    其中运算对象可以是字面量,对象,或表达式(递归的定义)

    运算规则决定了语法分析的规则、语法树的结构

    具体的常用操作如下

    python强类型

    无声明

    无编译器

    运行时如何:

    动态检查类型?

    维护类型?

    4.1数值操作:数值类型

    移位与按位逻辑运算符只用于整数

    比较逻辑可连接在一起

    要求操作数属于同一类,对内部类型进行强制类型转换:提升至复数,提升至浮点数

    用户对应的类型,不尝试隐式类型转换

    4.2序列操作:序列类型

    制作副本:浅复制

    变量解包:个数严格匹配

    成员关系:不支持模式匹配

    迭代

    序列逻辑运算

    切片

    字符串与元组创建后不可修改

    4.3字符串格式化

    "%索引/(变量名)插值功能"   % 元组与字典,元组加括号,避免歧义

    4.4高级字符串格式化

    字符串方法

    s.format(*args,**kargs)

    s中占位符{num}与{name},用位置参数*args与关键字参数**kargs解包后插入

    占位符中可进行索引属性查找,只支持使用名字(字符串字面量),不支持表达式,方法调用

    可通过特殊方法__format__自定义格式化行为

    4.5字典

    增?

    删,改,查(key存在)

    字典长度

    4.6集合操作

    集合的数学定义操作

    4.7增量赋值

    += -=

    不违反可变性,不会原地修改

    4.8属性访问

    .

    访问对象属性

    自定义行为

    4.9函数调用()

    调用时,每个参数对应于一个表达式,从左至右表达式求值(应用序求值)

    partical()函数科里化,指定部分参数的值,接受的参数变少

    4.10 转换函数,类型转换

    类型名作为函数名,显式类型转换

    复合类型:浅复制

     repr:表达式字符串

    eval:字符串求值

    4.11布尔表达式

    短路计算,改变了表达式的语义

    4.12对象等同性与标识

    ==值相等

    is 引用同一对象

     name——  addr——value

    4.13运算优先级

    括号

    索引

    属性

    一元

    二元

    比较

    逻辑

    匿名函数

    4.14条件表达式

    value1 if conditon else value2

     返回值:有条件的赋值

  • 相关阅读:
    Java day03第三课流程控制
    java day02第二课基本数据类型、修饰符、运算符
    Objective-C 枚举类型和字符串互转方案
    UISlider
    ios中AES和RSA 加密
    1. SEL和IMP(动态性)
    《iOS开发进阶》
    【旧事重提】iOS中文件读写
    Apple移动设备处理器指令集 armv6、armv7、armv7s及arm64
    Unity3D 与 Xcode的结合
  • 原文地址:https://www.cnblogs.com/qmcj/p/9100037.html
Copyright © 2020-2023  润新知