当前位置: 移动技术网 > IT编程>脚本编程>Python > python学习(索引/切片)

python学习(索引/切片)

2019年10月22日  | 移动技术网IT编程  | 我要评论

禹城二手房,华为教父任正非,围嘴纸样

一.索引

1.索引值从左到右-->从0开始,索引值从右到左-->从-1开始

  • 取值格式var[index]
>>> name = "xinfangshuo"
>>>
>>> name[0]
'x'
>>> name[5]
'n'
>>> name[-1]
'o'
>>> name[-2]
'u'

2.注意:整型int和字典dict和集合set不支持索引取值

>>> age = 123
>>>
>>> age[1]
traceback (most recent call last):
  file "<stdin>", line 1, in <module>
typeerror: 'int' object has no attribute '__getitem__'
>>> age = "123"
>>> age[1]
'2'
>>> name = {"name1":"zhangsan","name2":"lisi","name3":"wangwu"}
>>>
>>> name[1]
traceback (most recent call last):
  file "<stdin>", line 1, in <module>
keyerror: 1
>>>
>>> set = {"zhangsan","lisi","wangwu"}
>>>
>>> set[1]
traceback (most recent call last):
  file "<stdin>", line 1, in <module>
typeerror: 'set' object does not support indexing

3.多维数组/列表,索引取值

"""多维数组,索引取值"""
>>> name = ("zhangsan","lisi","wangwu","zhaoliu","wangba",("zhengying","lizhipeng","lvlinlin"))
>>>
>>> name[5][1]
'lizhipeng'
>>>
>>> list = [1,2,3,4,[5,6,7,[8,9,0]]]
>>>
>>> list[4][3][1]
9
>>> list[-1][-1][-2]
9

 

二.切片  var[start_index:end_index]

  • 注意:切出的值不包含end_index的值

1.正切

>>> name = "xinfangshuo"
>>>
>>> name[3:6]
'fan'
>>> name[3:7]
'fang'
>>> name[0:11]
'xinfangshuo'
>>> name[0:]
'xinfangshuo'
>>> name[:]
'xinfangshuo'

2.反切

>>> name = "xinfangshuo"
>>> 
>>> name[:-1]
'xinfangshu'
>>> name[:-2]
'xinfangsh'
>>> name[3:-4]
'fang'

3.跳级切

>>> name = "xinfangshuo"
>>>
>>> name[3:7]
'fang'
>>> name[3:7:]
'fang'
>>> name[3:7:1]
'fang'
>>> name[3:7:2]
'fn'
>>> name[7:3:2]
''
>>> name[::3]
'xfgu'

4.反跳级切

  • 从右往左切
  • start_index位置要在end_index位置的右边
>>> name = "xinfangshuo"
>>>
>>> name[-1:-8:-2]
'ohga'
>>> name[-1:8:-2]
'o'
>>>
>>> name[1:10:-2]
''
>>> name[10:1:2]
''
>>> name[10:1:-2]
'ohgan'

 

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网