Python中的List

一、创建list

list是一种有序的集合,可以随时添加和删除其中的元素。

构造list直接用 [ ] 把list的所有元素都括起来,就是一个list对象。通常,我们会把list赋值给一个变量,这样,就可以通过变量来引用list:

C = ['zhangsan','lisi','wangwu']
print(C)

结果为:

['zhangsan', 'lisi', 'wangwu']

由于Python是动态语言,所以list中包含的元素并不要求都必须是同一种数据类型

C = ['zhangsan', 100, True]

二、按照索引访问List

由于list是一个有序集合,所以,我们可以用一个list按分数从高到低表示出班里的3个同学:

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

通过索引来获取list中的指定元素。

索引从 0 开始,第一个元素的索引是0,第二个元素的索引是1,以此类推。

因此,要打印第一名同学的名字,用 C[0]:

print (C[0])
zhangsan

打印第二名同学的名字,用 C[1]:

print (C[1])
lisi

打印第三名同学的名字,用 C[2]:

print (C[2])
wangwu

要打印第四名同学的名字,用 C[3]:

print (C[3])
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
IndexError: list index out of range

报错了!IndexError意思就是索引超出了范围,因为上面的list只有3个元素,有效的索引是 0,1,2。

所以,使用索引时,千万注意不要越界。

三、倒序访问list

三名同学的成绩可以用一个list表示:

L = [95.5, 85, 59]

访问最后一名的成绩,可以用 -1这个索引来表示最后一个元素。

L = [95.5, 85, 59]
print(L[-1])

倒数第二名用 -2表示,倒数第三用-3表示。
使用倒序索引时,也要注意不要越界

四、添加新元素

班里有3名学生:

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

现在准备加入一名学生。

第一个办法是用 list 的 append() 方法,把新同学追加到 list 的末尾:

C = ['zhangsan', 'lisi', 'wangwu']
C.append('zhaoliu')
print (C)
['zhangsan', 'lisi', 'wangwu', 'zhaoliu']

append()总是把新的元素添加到 list 的尾部。

第二个方法是用list的 insert()方法,它有两个参数,第一个参数是索引号,第二个参数是待添加的新元素:
例如把zhaoliu添加到list中的第二个位置:

C = ['zhangsan', 'lisi', 'wangwu']
C.insert(1,'zhaoliu')
print (C)
['zhangsan', 'zhaoliu','lisi', 'wangwu']

后面的所有同学,都自动向后移动一位。

五、删除元素

现在要将zhaoliu转走,将他从List中删除,即删除元素,

我们可以用list的pop()方法删除,pop()方法总是删掉list的最后一个元素,并且它还返回这个元素
从List中可以看到zhaoliu在第二个,索引1,因此删除zhaoliu应使用
C.pop(1)

C = ['zhangsan', 'zhaoliu','lisi', 'wangwu']
C.pop(1)
'zhaoliu'
print (C)
['zhangsan', 'lisi', 'wangwu']

六、替换元素

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

将wangwu替换成zhaoliu,可以直接删除wangwu,然后添加zhaoliu.

另一个办法是直接用zhaoliu把wangwu给替换掉:

C[2] = 'zhaoliu'
print (C)
C=['zhangsan', 'lisi', 'zhaoliu']

对list中的某一个索引赋值,就可以直接用新的元素替换掉原来的元素,list包含的元素个数保持不变。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值