[TOC]

1、变量名

变量名就像我们现实社会的名字,把一个值赋值给一个名字时,它会存储在内存中,称之为变量,在大多数语言中,都把这种行为称为“给变量赋值”或“把值存储在变量中”。不过在Python中,与大多数其他编程语言不同,Python并不是把值存储在变量中,而更像是把名字贴在值的上边,可以认为,Python没有变量,只有名字。Python无需声明变量名,直接赋值就行!

1
2
3
x=1
y=1.1111
#都是直接赋值不声明变量

2、列表

列表是重要的Python内置可变序列之一,是包含若干元素的有序连续内存空间。在形式上所有元素放在一对中括号[ ]**中, 相邻元素之间使用逗号分隔开,当列表增加或删除元素时,列表对象自动进行内存的扩展或收缩,从而保证元素之间没有缝隙,Python列表的这个内存自动管理功能可以大幅减少程序员的负担,但插入和删除非尾部元素时会涉及列表中大量元素的移动,效率极低,并且对于某些操作可能会导致以外的错误结果,因此,除非确实有必要,否则应尽量从列表尾部进行元素的增加或删除操作**。 常用的列表对象方法 函数或方法 描述 ls[i] = x 替换列表ls第i数据项为x ls[i: j] = lt 用列表lt替换列表ls中第i到j项数据(不含第j项,下同) ls[i: j: k] = lt 用列表lt替换列表ls中第i到j以k为步的数据 del ls[i: j] 删除列表ls第i到j项数据,等价于ls[i: j]=[] del ls[i: j: k] 删除列表ls第i到j以k为步的数据 ls += lt或ls.extend(lt) 将列表lt元素增加到列表ls中 ls *= n 更新列表ls,其元素重复n次ls.append(x) 在列表ls最后增加一个元素x ls.clear() 删除ls中所有元素 ls.copy() 生成一个新列表,复制ls中所有元素 ls.insert(i, x) 在列表ls第i位置增加元素x ls.pop(i) 将列表ls中第i项元素取出并删除该元素 ls.remove(x) 将列表中出现的第一个元素x删除 ls.reverse(x) 列表ls中元素反转

3、列表推导式

列表推导式可以使用非常简洁的方式来快速生成满足特定需求的列表,代码具有非常强的可读性,另外,Python内部实现对列表推导式做了大量优化,可以保证很快的运行速度。列表推导式的语法形式为: [表达式 for 变量 in 序列或迭代对象]

4、切片

切片,在形式上,切片使用2个冒号分割的3个数字来完成,第一个数字表示切片的开始位置(默认为0),第二个数字表示切片的截止(但不包括)位置(默认为列表长度),第三个数字表示切片的步长(默认为1),当步长省略时可以同时省略最后一个冒号。

5、切片作用

切片适用于列表、元组、字符串、range对象等类型,应用于列表时具有最为强大的功能。可以使用切片来截取列表中的任何部分返回得到一个新列表,也可以通过切片来修改和删除列表中的部分元素,甚至可以通过切片操作为列表对象增加元素。

6、元组

元组也是Python的一个重要序列结构。从形式上,元组的所有元素放在一对圆括号中,元素之间使用逗号分隔。元组属于不可变序列,一旦创建,没有任何方法可以修改元组中元素的值,也无法为元组增加或删除元素。因此元组没有提供append()、extend()和insert()等方法,无法向元组中添加元素,同样元素中也没有remove()和pop()方法,也不支持对元组元素进行del操作,不能从元组中删除元素,而只能使用del命令删除整个元组。元组也支持切片操作,但只能通过切片来访问元组中的元素。

7、生成器推导式

生成器推导式从形式上来看,与列表推导式非常接近,只是生成器推导式使用圆括号而不是列表推导式所使用的方括号。与列表推导式不同的是,生成器推导式的结果是一个生成器对象,而不是列表,也不是元组,使用生成器对象的元素时,可以根据需要将其转化为列表或元组,也可以使用生成器对象的next()方法或者内置函数next()进行遍历,或者直接将其作为迭代器对象来使用。但是不管用哪种方法访问其元素,当所有元素访问结束以后,如果需要重新访问其中的元素,必须重新创建该生成器对象。

8、字典

字典是包含若干“键:值”元素的无序可变序列,字典中每个元素包含“键”和“值”两部分,表示一种映射或对应关系。定义字典时,每个元素的键和值用冒号分割,不同元素之间用逗号分隔,所有的元素放在一对大括号“{”和“}”中。 字典中的“键”可以是Python中任意不可变数据,如整数、实数、复数、字符串、元组等,但是不能使用列表、集合、字典或其他可变类型作为字典的“键”。另外,字典中“键”不允许重复,而“值”是可以重复的。

9、集合

集合中只能包含数字、字符串、元组等不可变的类型的数据,而不能包含列表、字典、集合等可变类型的数据。Python提供了一个内置函数hash()来计算对象的哈希值,凡是无法计算哈希值(调用hash()函数时抛出异常的)的对象都不能作为集合的元素,也不能作为字典对象的“键”。 内置函数len()、max()、min()、sum()、sorted()以及成员测试运算符in也适用于集合。

wechat