列表列表
1 列表和字符串类型一样也可以用切片操作
2 列表能改变其中的值而字符串不能,列表能保存任意值
3 元祖好多和列表很像 但是元组不能更改是只读的。
例如:
aList = [123, 'abc', 4.56, ['inner', 'list'], 7-9j]
aList[3][1]
'list'
嵌套列表的访问方法
aList[2] = 'float replacer'
给列表赋值
del aList[1]
aList.remove(123)
给列表删除值 知道删除下标用del不知道用remove
重点:善于用切片
成员关系操作( in ,not in)
列表中(同样适用于元组),我们可以检查一个对象是否是一个列表(或者元组)的成员.
>>> mixup_list
[4.0, [1, 'x'], 'beef', (-1.9+6j)]
>>>
>>> 'beef' in mixup_list
True
连接接操作符( + )
两个列表合并
像列表中添加新元素
num_list.append('new item')
重点:我昨天就怎么写都不对,我用下标方式填写 是不对的,下标方式可以改写但不能添加新的
重复操作符( * )
重复操作符可能更多的应用在字符串类型中,不过,列表和元组跟字符串同属序列类型,所
以需要的时候也可以使用这一操作.
len()
对字符串来说len()返回字符串的长度,就是字符串包含的字符个数.对列表或者元组来说,
它会像你想像的那样返回列表或者元组的元素个数
max() and min()
max()和min()函数在字符串操作里面用处不大,因为它们能对字符串做的只能是找出字符而对列表和元组来说,它们被定义了更多的用处.比如
对只包含数字和字符串对象的列表,max()和min()函数就非常有用
在python中enumerate的用法多用于在for循环中得到计数,本文即以实例形式向大家展现python中enumerate
重点:我想得到循环技术用C方法 在外面定义一个0在里面加1 哎,,够笨
for i, album in enumerate(albums):
... print i, album
0 tales
1 robot
2 pyramid
list()函数和tuple()函数接受可迭代对象(比如另一个序列)作为参数,并通过浅拷贝数据
来创建一个新的列表或者元组.虽然字符串也是序列类型的,但是它们并不是经常用于list()和
tuple(). 更多的情况下,它们用于在两种类型之间进行转换,比如你需要把一个已有的元组转
成列表类型的(然后你就可以修改它的元素了),或者相反.
在使用可变对象的方法如sort(),extend()和reverse()的时候要注意,这些操作会在列表
中原地执行操作,也就是说现有的列表内容会被改变
一个经常会被问到的问题是,"为什么我们要区分元组和列表变量?"这个问题也可以被表
述为“我们真的需要两个相似的序列类型吗?”,一个原因是在有些情况下,使用其中的一种类
型要优于使用另一种类型。
最好使用不可变类型变量的一个情况是,如果你在维护一些敏感的数据,并且需要把这些
数据传递给一个并不了解的函数(或许是一个根本不是你写的API),作为一个只负责一个软件
某一部分的工程师,如果你确信你的数据不会被调用的函数篡改,你会觉得安全了许多。
一个需要可变类型参数的例子是,如果你在管理动态数据集合时。你需要先把它们创建出
来,逐渐地或者不定期的添加它们,或者有时还要移除一些单个的元素。这是一个必须使用可
变类型对象的典型例子。幸运的是,通过内建的list()和tuple()转换函数,你可以非常轻松
的在两者之间进行转换.
list()和tuple()函数允许你用一个列表来创建一个元组,反之亦然.如果你有一个元组变
量,但你需要一个列表变量因为你要更新一下它的对象,这时list()函数就是你最好的帮手.如
果你有一个列表变量,并且想把它传递给一个函数,或许一个API,而你又不想让任何人弄乱你
的数据,这时tuple()函数就非常有用。
映射类型:字典