python 学习手册 tips 第4,5章

来源:互联网 发布:乎的偏旁是什么 编辑:程序博客网 时间:2024/04/30 09:37

第4章 介绍python对象类型

python中,任何事物都是对象

python的组成

  • 程序由模块组成;
  • 模块包含语句;
  • 语句包含表达式;
  • 表达式建立并处理对象;

为何使用内置类型

  • 内置对象使程序容易编写;
  • 内置对象是扩展的组件;
  • 内置对象效率高;
  • 内置对象是语言的一部分

python的内置对象和一些编写常量所用到的语法

数字    1234, 3.14, 3+4j字符串    'fds'列表    [1, 2, 3]字典    {1:'1', 2:'2'}元组    (1, 3, 9}文件    myfile = open('eggs', 'r')集合    set('abc'),{'a', 'b', 'c'}其他类型    类型、None、布尔型编程单元类型    函数、模块、类与实现相关的类型    编译的代码堆栈跟踪

弱类型的python

  • 自动跟踪类型而不要求声明;
  • 也有强类型语言的特点:只能对一个对象进行适合该类型的有效的操作

字符串在python中具有不可变性

即不能对原始字符串进行改变,像slice、index操作都是生成了新的字符串然后返回的

python中的每一个对象都可以分为可变性与不可变性

  • 可变的:
  • 列表
  • 字典
  • 不可变的:
  • 数字
  • 字符串
  • 元组

列表的方法

list.sort()和listreverse()会就地更改列表的内容

列表解析

m = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]print [row[1] for row in m][2, 5, 8]

  • 列表解析源自集合的概念,通过对序列中的每一项运行一个表达式来创建一个新列表。
  • 列表解析是编写在方括号中的(意思就是要创建一个列表)

列表解析复杂些的应用

[row[1] for row in m if row[1] % 2 == 0][2, 8]

字典中的value是无顺序的

检查对象类型的三种方法

L = [1, 2, 3]if type(L) == type([]):if type(L) == list:if isinstance(L, list):

类的作用

  • 定义了新的对象类型,扩展了核心类型;
  • 通过支持程序定制而节省开发时间

第5章 数字

python的操作符表达式

yield xlambda args: expressionx if y else zx or yx and ynot xx in y, x not in yx is y, x is not yx < y, x <= y, x > y, x >= yx == y, x != yx | yx ^ yx & yx << y, x >> yx + y, x - yx * y, x % y, x / y, x //y-x, +x~xx ** yx[i]x[i:j:k]x(...)x.attr(...)[...]{...}

变量和表达式

  • 表达式包含操作符和操作数;
  • 变量在第一次赋值时创建;
  • 变量在表达式中使用将被替换为它们的值;
  • 变量在表达式中使用以前已赋值;
  • 变量像对象一样不需要在一开始进行声明

str和repr

默认的交互模式回显和print打印的区别就相当于内置repr和str函数的区别;

原创粉丝点击