python List,切片的用法

#list 列表 用[]“中括号”表示

num = ["a", 1, 1, 1, 2, 3, 4, 5, 6, 7, 8]
# count 查找元素出现多少次,下面的语句表示“1”这个元素在上面的列表中出现了多少次,出现了3次。
print(num.count(1))
>>> 3

# index 查询元素的下标,如果列表里面有重复的元素,只能显示出第一个索引
print(num.index(a)) #表示在num这个列表里面a 这个元素的索引是多少,答案是索引为0
>>> 0
# 列表取值
print(num[2]) # 表示num列表中索引为2的取值是1
>>> 1
# append 从末尾增加元素
num.append(9)#表示在num这个列表的尾部增加了 9 这个元素;如果是想增加字符,num.append("f"),后面就会增加 f 这个元素啦!
print(num)
>>> ['a', 1, 1, 1, 2, 3, 4, 5, 6, 7, 8, 9]
# insert 指定位置添加元素num.insert(0, "a")#表示索引为0的位置添加了一个元素 aprint(num) >>> ['a', 'a', 1, 1, 1, 2, 3, 4, 5, 6, 7, 8]

# num[0] = 0 #把索引为0 的元素的值,改为 0print(num)
>>> [0, 1, 1, 1, 2, 3, 4, 5, 6, 7, 8]
# 删除
del del num[0] # 表示删除num这个表里面中,索引值为 0 的这个元素。
>>>[1, 1, 1, 2, 3, 4, 5, 6, 7, 8]

pop #
num.pop()#默认删除最后一个元素
# num.pop(2)#pop写入索引,就删除指定的元素

remove # num.remove("a")# 删除指定的元素

clear # num.clear() #清空列表 # print(num)

reverse #用来对列表的元素顺序进行翻转。(把列表的顺序倒过来了)num.reverse()print(num)
>>> [8, 7, 6, 5, 4, 3, 2, 1, 1, 1, 'a']
列表排序 # num.sort()#升序 # num.sort(reverse=True)#sort 默认升序,加上reverse=True,直接降序排序 # print(num[-1])#下标-1 代表最后一个元素

num = ["a", 1, 2, 3, 4, 5, 6, 7, 8]name = ["a", "b", "c", "d"]

列表合并拼接
extend
num.extend(name) #把后面list的元素加到前面的list里面,即 把name里面的元素加到num列表里面
print(num)
>>> ['a', 1, 2, 3, 4, 5, 6, 7, 8, 'a', 'b', 'c', 'd']

info = num + name#合并两个list ,把两个list元素和并在info里面
print(info)
>>> ['a', 1, 2, 3, 4, 5, 6, 7, 8, 'a', 'b', 'c', 'd']

注:print(num.extend(name)) #这样的表达方法是错误的,因为extend这个方法没有返回值,所以不能这样做。 用in来判断一个值在不在list里面。不在 not in if username in users
一维数组
num1 = [1, 2, 3, 4, 5]
三位数组
num2 = [1, 2, 3, 4, 5, ["a", "b", "c", ["d", "e"]]] print(num2[-1])#表示取 num2 这个列表的最后一个元素
>>> ['a', 'b', 'c', ['d', 'e']]
#打印三维数组中某个元素的索引print(num2[5].index("a")) #这个表示num2这个列表里面的 第五个元素中的子列表中的 a 的索引值是多少,a在第一个位置,索引索引值为0
>>> 0

注:list 比字符串的优势,取值方便 切片 即list取值的一种方式, 取值是顾头不顾尾,注:切片的步长默认为1,不可为0 num2 = [1, 2, 3, 4, 5, ["a", "b", "c", ["d", "e"]]] print(num2[3:6]) # 这个切片表示获取从第三个元素到第六个元素的值,当前列表中只有5个元素,由于切片的性质顾头不顾尾,所以要取的最后一个值,就必须是6
>>>[4, 5, ['a', 'b', 'c', ['d', 'e']]]
print(num2[:3])#从头开始取,取到第二个元素
>>>[1, 2, 3]
print(num2[1:5:2]) #取 索引为1 到 4的值,步长为2 # print(num2[::2]) #表示取所有的值,步长为2

print(num2[::-1])#切片步长为负数,从后面往前面取值,相当于翻转了
>>>[['a', 'b', 'c', ['d', 'e']], 5, 4, 3, 2, 1] 注:步长为负数,前面为正数的,取出来为空

print(num2[1:5:-1])

>>>[] # 切片的操作适用于字符串,但是字符串的值不能修改
#注:list 是可变的;字符串和元组是不可变的

#元组
user = (“小花”,“小米”,“小明”)
print(user.count("小花")) # 统计元组中元素出现的次数
print(user.index("小花")) # 返回元组中元素的索引

 

posted @ 2017-09-26 16:15  爱学习的学渣  阅读(59390)  评论(0编辑  收藏  举报