Python学习之路-----列表

    任何编程语言都免不了对数据的处理,而变量存在的意义就是方便数据的存取,但是在特定情况下我们需要对很多的数据处理,如果都一一定义变量那未免太繁琐了。Python提供了一种高级数据类型可以同时存放多个数据值,就是列表。

列表的语法:

列表名 = [元素1,元素2,元素3.......元素n]

列表名符合一般变量的命令规范,[]里面存放数据,每两个数据之间以逗号隔开。例:

list_test = [1,2,3,4,5]

列表的基本特性:

1.列表中每个元素与索引的关系:第n个元素的索引是n-1,n最小是0;

2.使用print()输出列表中的指定元素:print(list_test[0]),即输出列表中的第一个元素;

3.使用print()输出列表中的所有元素:print(list_test)

4.若列表中的共有n个元素,那么最大的索引是n-1,不存在索引超过n-1的元素;

5.一个列表中的元素可以是不同类型,如 test = [1,2.2,"第三个元素",True,False];

6.获得类型,使用type()方法;

元素增加:

三个方法:append(),insert(),extend()

list_test = [1,2,3,4,5]
list_test.append(True)   # 在末尾加入一个元素
print("list_test:",list_test) # 结果:list_test: [1, 2, 3, 4, 5, True]
list_test.insert(5,"zhangsan") # 在指定的索引位置插入一个元素,若该索引有元素,依次后移一位
print("list_test:",list_test) # 结果:list_test: [1, 2, 3, 4, 5, 'zhangsan', True]

append()和extend()的区别:

extend()里面写的是一个可迭代的对象(列表、字符串都是可迭代的对象),会把可迭代对象的里的每个元素取出来然后依次加入指定列表中;

append()里面也可以写一个可迭代的对象,但是它会将该对象看成一个整体加入指定列表中。

list1 = [1,2,3]
list2 = [4,5,6]
list3 = [7,8,9]
str = "hello world"
list1.append(list3)
list2.extend(list3)
print(list1) # [1, 2, 3, [7, 8, 9]]
print(list2) # [1, 2, 3, [7, 8, 9]]
list1.append(str)
list2.extend(str)
print(list1) # [1, 2, 3, [7, 8, 9], 'hello world']
print(list2) # [4, 5, 6, 7, 8, 9, 'h', 'e', 'l', 'l', 'o', ' ', 'w', 'o', 'r', 'l', 'd']

元素删除:

方法与方式:

1.使用remove()方法,括号中写要删除的元素;

2.pop()方法,返回删除的元素,默认删除最后一个元素,里面也可以写一个索引值;

3.clear()清空列表

4.使用del关键字,del 列表名[元素索引];

list4 = [1,2,3,4,5,6,7,8]
list4.remove(3)          
print(list4)             # [1, 2, 4, 5, 6, 7, 8]
num1 = list4.pop()       
print(num1)              # 8
print(list4)              # [1, 2, 4, 5, 6, 7]
num2 = list4.pop(2) 
print(num2)                 # 4
print(list4)               # [1, 2, 5, 6, 7]
del list4[3]
print(list4)            #[1, 2, 5, 7]
list4.clear()
print(list4)              # []

 元素修改

 通过元素的索引获得该元素然后修改这个值。

list5 = ["zhangsan","lisi","wangwu"]
list5[0] = "change"
print(list5)  # ['change', 'lisi', 'wangwu']

 元素查询

 1.通过索引获得指定索引的值;

 2.通过index(元素)函数获得元素在列表中第一次出现的索引。该函数默认从第一个索引开始寻找,index(要寻找的元素,开始的 索 引(包含),结束索引(不包含));

 3  .count(元素),返回元素在列表中出现的数量;

 4.len(列表名),返回元素的数量;

5.  in,判断元素是否在列表中;

list5 = ["zhangsan","lisi","wangwu",1,2,3,5,1,1]
print(list5[0])  # zhangsan
print(list5.index("zhangsan")) # 0
print(list5.index(1,3,5)) # 3
print(list5.count(1)) # 3
print(len(list5)) #9
if 8 in list5:
    print("8 is in list5")
else:
    print("8 is no in list5") # 8 is no in list5

列表排序

调用sort()实现对列表元素的排序,默认是升序排序,若想降序,使用sort(reverse=True)。

list1 = [6,3,5,4,5,8,1]
list2 = [6,3,5,4,5,8,1]
list1.sort()
print(list1) #[1, 3, 4, 5, 5, 6, 8]
list2.sort(reverse=True)
print(list2) #[8, 6, 5, 5, 4, 3, 1]

sort(key,reverse)

key表示在排序的时候按什么标准排序,如果为key=len,表示在排序的时候按照每个元素的长度来排序。

list.reverse(),将列表本身反转

猜你喜欢

转载自blog.csdn.net/shen_chengfeng/article/details/80543075