[python字符串的索引与切片操作_Python教程:列表、元组,以及序列的索引与切片...

列表

list是处理一组有序项目的数据结构,即你可以在一个列表中存储一个 序列 的项目。假想你有一个购物列表,上面记载着你要买的东西,你就容易理解列表了。只不过在

你的购物表上,可能每样东西都独自占有一行,而在Python中,你在每个项目之间用逗号分割。 列表中的项目应该包括在方括号中,这样Python就知道你是在指明

一个列表。一旦你创建了一个列表,你可以添加、删除或是搜索列表中的项目。由于你可以增加或删除项目,我们说列表是 可变的 数据类型,即这种类型是可以被改变的。注意,列表与数组不同(尽管都是在方括号中)。Python的列表中可以存储不同的数据类型: list_val = [1, '3', 5 ,'4'] 是合理的。# -- coding:utf-8 --

print('=' * 8)

list_val = range(5,0, -1) # 生成list

print(list_val)

print('=' * 8)

list_val.append(6)

print(list_val)

print('=' * 8)

list_val = list_val + [7,8]

print(list_val)

print('=' * 8)

list_val.extend([9, 10])

print(list_val)

print('=' * 8)

list_val.insert(5, 5)

print(list_val)

print('=' * 8)

tep_a = list_val.pop()

print(list_val)

print(tep_a)

print('=' * 8)

tep_a = list_val.pop(5) # 5为索引值

print(list_val)

print(tep_a)

print('=' * 8)

val_index = list_val.index(3) # 得到值为3的索引

print(list_val)

print(val_index)

print('=' * 8)

list_val.remove(3) # 3要移去的值,不存在的话会引发异常

print(list_val)

print(val_index)

print('=' * 8)

for val in list_val:

print(val)

print('=' * 8)

print(len(list_val))

print('=' * 8)

list_val.sort()

print(list_val)

print('=' * 8)

list_val.reverse()

print(list_val)

元组

元组和列表十分类似,只不过元组和字符串一样是 不可变的

即你不能修改元组。元组通过圆括号中用逗号分割的项目定义。元组通常用在使语句或用户定义的函数能够安全地采用一组值的时候,即被使用的元组的值不会改变。元组和列表可以进行转换:a = range(8)

print(a)

b = tuple(a)

print(b)

c = list(b)

print(c)

像元组一样看待字符串

字符串具备很多元组的特征,这点看起来不是非常明显。与元组不同的是,字符串内部的各个成员都是字符。str_val = 'Hello, Python!'

print(len(str_val))

print(str_val.index('P'))

for x in str_val:

print(x)

序列

列表、元组和字符串都是序列,但是序列是什么,它们为什么如此特别呢?序列的两个主要特点是索引操作符和切片操作符。索引操作符让我们可以从序列中抓取一个特定项目。切片操作符让我们能够获取序列的一个切片,即一部分序列。 下面例子以列表为例,但对于元组、字符串也都是适用的。# -- coding:utf-8 --

list_val = range(8,0, -1)

print(list_val)

index_list = range(8)

for index in index_list:

print(' Index: %d'%(index))

print(list_val[index])

print(list_val[-1])

print(list_val[-2])

# 切片

print(list_val[2:])

print(list_val[:-2])

print(list_val[2:-2])

print(list_val[:])

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值