您的位置:首页 > 编程语言 > Python开发

lists,tuples and sets of Python

2014-12-10 10:31 393 查看
(python2.7.x)

Lists 列表

列表是一个有序序列(集合),可变的(可以修改),可以理解为其他语言中的数组类型,但是列表更灵活更强大。

列表由方括号[]来定义的,它的元素可以是任意类型或对象,一个列表中可以包含混合元素。

例:

x = [] 创建空列表

x = [1, 2] x = ['a', 'b'] x = [[1, 2]] x = [{1, 2}] 创建列表,它的元素可是任意类型或对象

x = [1, 'ab', [1, 2], {1, 2},{1:1, 2:2}] 创建列表,一个列表中有混合元素

列表访问可以通过切片或索引来访问,索引值也是从0开始,不同于其他语言数据的时,列表索引可以是负数,-1表示最后一个元素。

x = ['a', 'b', 'c']

x = ['a''b''c']
正索引012
负索引-3-2-1
索引不能大于最大正索引,不能小于最小负索引,否则会报列表索引超出范围错误:IndexError: list index out of range

切片[index1:index2:step],从索引index1开始(包含index1)到索引index2(不包含index2),步长step(元素的间距),这三个参数都是可选的

Tuples 元组

元组跟列表很相似,但是不可变(不能修改,只能创建)。元组是由()括号来创建的

例:

x = (1, 2, 3)

x[1] = 5 因元组不可变的序列,这样操作会报错:TypeError: 'tuple' object does not support item assignment

注意:单元组就是元组只有一个元素时,需在元素后加个英文半角逗号”,“,否则创建的将不是元组

例:

>>x = (1)

>>x

1 这样创建的不是元组,只是一个附值操作

>>type(x)

<type 'int'> 这样创建的不是元组,只是一个附值操作

>>x = (1,)

>>x

(1,)

>>type(x)

<type 'tuple'>

>>x = () 空元组的创建,这样是合法的

>>x

()

>>type(x)

<type 'tuple'>

Sets 集合

集合对象是一组无序排列元素组成。集合有两种不同的类型:可变集合(set)、不可变集合(frozenset)。

可变集合:可以添加和删除元素,它不是可哈希的,因此不能用做字典的键也不能做其他集合中的元素。

不可变集合:与可变集合相反,不可修改,有哈希值,可用做字典的键或作为集合中的一个成员。

集合的创建:

>>set('hypo')

set(['h', 'y', 'p', 'o'])

>>frozenset('hypo')

frozenset(['h', 'y', 'p', 'o'])
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: