Python学习 Mon Tue

4.4 列表

4.4.1 切片

切片用法和range()差不多,都需要指定元素的索引,但切片中间使用的是:

abc=['a','b','c','d']
print(abc[0:3])
#输出
['a', 'b', 'c']

提取列表的第二和第三个元素。

print(abc[1:3])
#输出
['b', 'c']

不设定起始索引,程序将默认起始索引为0

print(abc[:3])
#输出
['a', 'b', 'c']

不设定终止索引值,程序会输出最后一个元素。

print(abc[2:])
#输出
['c', 'd']

是用负数作为索引值,将会输出与列表末尾具有相应距离的元素。

print(abc[-1:])
#输出
['d']

设置切片的第三个值作为步长输出。

print(abc[0:4:2])
#输出
['a', 'c']

4.4.2 遍历切片

for循环中将切片代替range(),指定范围。

abc=['a','b','c','d']
for a in abc[:3]:
    print(a.title())
#输出
A
B
C

4.4.3 复制列表

将一个完整的列表切片赋给一个新变量,可以完成列表复制的操作。

abc=['a','b','c','d']
ab=abc[:]
print(ab)
#输出
['a', 'b', 'c', 'd']

此时,两个变量指向不同的列表。

ab.append('ab')
abc.append('abc')
print(ab,abc)
#输出
['a', 'b', 'c', 'd', 'ab'] ['a', 'b', 'c', 'd', 'abc']

去掉切片后,只是简单的将两个变量相关联,这两个变量都指向同一个列表。因此在分别对两个变量执行不同的附加后得出的列表相同。

abc=['a','b','c','d']
ab=abc
print(ab)
ab.append('ab')
abc.append('abc')
print(ab,abc)
#输出
['a', 'b', 'c', 'd']
['a', 'b', 'c', 'd', 'ab', 'abc'] ['a', 'b', 'c', 'd', 'ab', 'abc']

4-10

print(abc[0:3]
#输出
['a', 'b', 'c']
print(abc[1:4])
#输出
['b', 'c', 'd']
print(abc[-3:])
#输出
['d', 'ab', 'abc']

4-11

abc=['a','b','c','d']
ac=abc[:]
abc.append('e')
ac.append('ac')
print(abc,ac)
for a in abc[:]:
    print(a)
for c in ac[:]:
    print('\t',c)
#输出
['a', 'b', 'c', 'd', 'e'] ['a', 'b', 'c', 'd', 'ac']
a
b
c
d
e
	 a
	 b
	 c
	 d
	 ac

4-12

number=['1','2','3','4']
for shu in number[1:3]:
    print(shu)
for shu in number[0::3]:
    print(shu)
#输出
2
3
1
4
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值