python学习笔记(三)

#!/usr/bin/env python # -*- coding: utf-8 -*

""" list和元组tuple """

# 对之前的补充:

# 当索引超出了范围时,Python会报一个IndexError错误,所以,要确保索引不要越界

# 记得最后一个元素的索引是len(classmates) - 1

# 也可以把元素插入到指定的位置,比如索引号为1的位置

classmate = ['zhangsan', 'lisi', 'wangwu', 'lisi']

print classmate[0]

classmate.insert(0, 'liuliu')

# 在索引数字的位置插入新的元素'liuliu'

# 索引从0开始。。。在0的位置就是从头开始插入

# 其实就是空隙,0-元素一-1-元素二-2-元素三......

print classmate

print classmate.index('lisi')

# 返回元素lisi第一次出现的index索引

# print classmate.index('lsssa')

# 必须要有,没有的话会报错。。。

a =1, 2, 34, 55, 6

print a

# a.insert是错误的,元组没有insert函数,不能直接插入

print a.index(2)

# 没有的话也会报错

print a[1]

print a.count(2)

# 统计元组内某个元素出现的次数

"""列表和元组,取某个元素的时候刚好反着,元组用[],而list则用()"""

# 要删除list的元素,用pop()方法

classmate.pop()

# 不写的话默认为删除最后一个元素

print classmate

classmate.pop(1)

print classmate

# 然后是替换某个元素的话直接赋值就可以了

# 如果list中元素也是list类型的话就是二维数组了,相当于matlab中矩阵的构成,不同的是不用要求list中的list维数一致

arr = [[1, 2], [2]]

print arr

# tuple一旦初始化就不能修改,所以没有append,insert等操作

# 不可变的tuple有什么意义?

# 因为tuple不可变,所以代码更安全。如果可能,能用tuple代替list就尽量用tuple

# 因为tuple不可变,在定义的时候,tuple的元素就必须被确定下来

t = ('a', 'b', ['A', 'B'])

t[2][0] ='X'

t[2][1] ='Y'

print t

# 所以,tuple所谓的“不变”是说,tuple的每个元素,指向永远不变

# 即指向'a',就不能改成指向'b'

# 指向一个list,就不能改成指向其他对象,但指向的这个list本身是可变的!

# 所以说元组中的元素为list的话,表面看tuple中变了,但其实是list变了而已

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值