欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Python数据基础类型-列表

程序员文章站 2023-11-02 13:20:34
1,列表的创建 2,访问列表的值 列表的数据访问需要使用索引序号。 list1 = ['hello', 'world', 19, 20] 3,数值更新 列表内容的更新可以直接使用索引序号,进行内容的更新,也可以使用append方法。insert( )在列表的任何位置添加新元素。 4,列表元素删除 列 ......

1,列表的创建

list1 = ['hello', 'world', 1997, 2000]
list2 = [1, 2, 3, 4, 5 ]
list3 = ["a", "b", "c", "d"]
list4 = list() #创建空列表
list5 = [] #创建空列表

2,访问列表的值

  列表的数据访问需要使用索引序号。 list1 = ['hello', 'world', 19, 20]

list2 = [1, 2, 3, 4, 5 ]
print "list1[0]: ", list1[0]
print "list2[1:5]: ", list2[1:5]
输出结果:
list1[0]: hello
list2[1:5]: [2, 3, 4, 5]

3,数值更新

  列表内容的更新可以直接使用索引序号,进行内容的更新,也可以使用append方法。insert( )在列表的任何位置添加新元素。

list1 = ['hello', 'world', 19, 20]
print list1
list1[0] = "hello"
print list1
list1.append(first)
print list1
list1.insert(0,'111111')
运行结果:
['hello', 'world', 19, 20]
['hello', 'world', 19, 20]
['hello', 'world', 19, 20, 'first']
['111111', 'hello', 'world', 19, 20, 'first']

4,列表元素删除

  列表元素的删除使用del语句,也可以使用remove方法,也可使用pop()方法。

  pop( )可删除末尾的元素,并让你能够接着使用它。

list1 = ['hello', 'world', 19, 20]
print list1
del list1[2]
print list1
运行结果:
['hello', 'world', 19, 20]
['hello', 'world', 20]

5、python列表脚本操作符

  列表对 + 和 * 的操作符与字符串相似。+ 号用于组合列表,* 号用于重复列表。

list1 = ['hello', 'world', 19, 20]
print list1
print list1 + list1
print list1 * 3
运行结果:
['hello', 'world', 19, 20]
['hello', 'world', 19, 20, 'hello', 'world', 19, 20]
['hello', 'world', 19, 20, 'hello', 'world', 19, 20, 'hello', 'world', 19, 20]

 6,列表常用的方法

  1,list.append(obj) #在列表末尾添加新的对象

list1 = ['hello', 'world', 100, 200]
list1.append(300)
print list1
['hello', 'world', 100, 200, 300]

  2,list.count(obj) #统计某个元素在列表中出现的次数

list1 = ['hello', 'world', 100, 200, "hello"]
ret1 = list1.count("hello")
ret2 = list1.count(100)
print ret1, ret2
2 1

  3,list.extend(seq) #在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)

list1 = ['hello', 'world', ]
print list1
list2 = [100, 200, "hello"]
list1.extend(list2)
print list1
['hello', 'world']
['hello', 'world', 100, 200, 'hello']

  4,list.index(obj) #从列表中找出某个值第一个匹配项的索引位置

list1 = ['hello', 'world', 100, 200, "hello"]
print (list1.index("world"))
print (list1.index("hello"))  #第一个匹配的位置
print (list1.index(100))
print (list1.index("100")) # 找不到报错
1
0
2
traceback (most recent call last):
  file "d:/pycharm_code/extend.py", line 5, in <module>
    print (list1.index("100")) # 找不到报错
valueerror: '100' is not in list

  5,list.insert(index, obj) #将对象插入列表

list1 = ['hello', 'world', ]
list2 = [100, 200, "hello", ]
list1.insert(0 , "world")
list1.insert(0 , list2) # 整个列表作为元素添加到原列表中
print (list1)
[[100, 200, 'hello'], 'world', 'hello', 'world']

  6,list.pop(obj=list[-1]) #移除列表中的一个元素(默认最后一个元素),并且返回该元素的值

list1 = ['hello', 'world', 100, 200, "hello",  ]
print (list1)
list1.pop(0)  # 移除索引为0的
print (list1)
list1.pop()  # 默认从最后一个开始移除
print (list1)
['hello', 'world', 100, 200, 'hello']
['world', 100, 200, 'hello']
['world', 100, 200]

  7,list.remove(obj) #移除列表中某个值的第一个匹配项

list1 = ['hello', 'world', 100, 200, "hello", ]
print list1
list1.remove("hello")  # 删除第一个匹配到的元素
print list1
['hello', 'world', 100, 200, 'hello']
['world', 100, 200, 'hello']

  8,list.reverse() #反向列表中元素

list1 = ['hello', 'world', 100, 200 ]
list1.reverse()
print(list1)
[200, 100, 'world', 'hello']

  9,使用方法sort( )对列表进行永久性排序,reverse=true 倒序排序

cars = ['bmw','audi','toyota','subaru']
cars.sort()
print(cars)
cars.sort(reverse=true)
print(cars)
['audi', 'bmw', 'subaru', 'toyota']
['toyota', 'subaru', 'bmw', 'audi']

  10,使用函数sorted( )对列表进行临时排序,reverse=true 倒序排序

cars = ['bwm','audi','toyota','subaru']
print("here is the original list:")
print(cars)
print("\nhere is the sorted list:")
print(sorted(cars))
print("\nhere is the original list again:")
print(cars)
here is the original list:
['bwm', 'audi', 'toyota', 'subaru']

here is the sorted list:
['audi', 'bwm', 'subaru', 'toyota']

here is the original list again:
['bwm', 'audi', 'toyota', 'subaru']

 

7、列表相关的内置函数

  cmp(list1, list2) #比较两个列表的元素
  len(list) #列表元素个数
  max(list) #返回列表元素最大值
  min(list) #返回列表元素最小值
  list(seq) #将元组转换为列表