python学习系列5——数据类型(列表)

列表可以存储整数、实数、字符串、列表、元组等任何类型的数据,并且和数组不同的是,在同一个列表中元素的类型也可以不同。

(一)创建列表

列表使用"[ ]"创建。

(1)使用 = 运算符直接创建列表

1     num = [1,2,3,4,5,6,7]
2     name = ["C语言中文网","http://c.biancheng.net"]
3     program = ["C语言","Python","Java"]

(2)使用list()函数创建列表

1     a_tuple = ('crazyit', 20, -1.2)
2     # 将元组转换成列表
3     a_list = list(a_tuple)
4     print(a_list)

 

(二)列表添加元素

(1)append方法

代码:

 1     a_list = ['crazyit', 20, -2]
 2     # 追加元素
 3     a_list.append('fkit')
 4     print(a_list)
 5     a_tuple = (3.4, 5.6)
 6     # 追加元组,元组被当成一个元素
 7     a_list.append(a_tuple)
 8     print(a_list)
 9     # 追加列表,列表被当成一个元素
10     a_list.append(['a', 'b'])
11     print(a_list)

结果:

['crazyit', 20, -2, 'fkit']
['crazyit', 20, -2, 'fkit', (3.4, 5.6)]
['crazyit', 20, -2, 'fkit', (3.4, 5.6), ['a', 'b']]

(2)extend方法

代码:

 1     b_list = ['a', 30]
 2     # 追加元组中的所有元素
 3     b_list.extend((-2, 3.1))
 4     print(b_list)
 5     # 追加列表中的所有元素
 6     b_list.extend(['C', 'R', 'A'])
 7     print(b_list)
 8     # 追加区间中的所有元素
 9     b_list.extend(range(97, 100))
10     print(b_list)

结果:

['a', 30, -2, 3.1]
['a', 30, -2, 3.1, 'C', 'R', 'A']
['a', 30, -2, 3.1, 'C', 'R', 'A', 97, 98, 99]

(3)insert方法

代码:

1     c_list = list(range(1, 6))
2     print(c_list)
3     # 在索引3处插入字符串
4     c_list.insert(3, 'CRAZY' )
5     print(c_list)
6     # 在索引3处插入列表
7     c_list.insert(3, ["crazy"])
8     print(c_list)

结果:

[1, 2, 3, 4, 5]
[1, 2, 3, 'CRAZY', 4, 5]
[1, 2, 3, ['crazy'], 'CRAZY', 4, 5]

 

(二)列表删除元素

删除指定位置元素

(1)del语句

代码:

1     a_list=[20,2.4,(3,4)]
2     del a_list[-1]
3     print(a_list)

结果:

[20, 2.4]

(2)remove方法

删除指定元素

1     c_list = [20, 'crazyit', 30, -4, 'crazyit', 3.4]
2     # 删除第一次找到的30
3     c_list.remove(30)
4     print(c_list)
5     # 删除第一次找到的'crazyit'
6     c_list.remove('crazyit')
7     print(c_list)
8     #再次尝试删除 30,会引发 ValueEroor 错误
9     c_list.remove(30)

(3)clear方法

清空列表

代码:

1     c_list = [20, 'crazyit', 30, -4, 'crazyit', 3.4]
2     c_list.clear()
3     print(c_list)

结果:

[]

 

(三)列表修改元素

切片就是获取列表部分元素的方法。

 代码:

1 b_list = list(range(1, 5))
2 print(b_list)
3 # 将第2个到第4个(不包含)元素赋值为新列表的元素
4 b_list[1: 3] = ['a', 'b']
5 print(b_list)
6 # 将第3个到第3个(不包含)元素赋值为新列表的元素,就是插入
7 b_list[2: 2] = ['x', 'y']
8 print(b_list)  

结果:

[1, 2, 3, 4]
[1, 'a', 'b', 4]
[1, 'a', 'x', 'y', 'b', 4]

 

(四)列表访问元素

代码:

1     num = [1,2,3,4,5,6,7]
2     print(num[2:4])

结果:

[3, 4]

 

 

(五)list常用方法

(1)count()方法

求某元素出现的次数

代码:

1     a_list = [2, 30, 'a', [5, 30], 30]
2     # 计算列表中30的出现次数
3     print(a_list.count(30))
4     # 计算列表中[5, 30]的出现次数
5     print(a_list.count([5, 30]))

结果:

2
1

(2)index()方法

求某元素出现的位置

代码:

1     a_list = [2, 30, 'a', 'b', 'crazyit', 30]
2     # 定位元素30的出现位置
3     print(a_list.index(30))
4     # 从索引2处开始、定位元素30的出现位置
5     print(a_list.index(30, 2)) 
6     # 从索引2处到索引4处之间定位元素30的出现位置,因为找不到该元素,会引发错误
7     print(a_list.index(30, 2, 4))

结果:

1
5
Traceback (most recent call last):
  File "C:\Users\mengma\Desktop\1.py", line 7, in <module>
    print(a_list.index(30, 2, 4)) # ValueError
ValueError: 30 is not in list

(3)pop()

移除特定元素

代码:

1     a_list=[1,2,3]
2     #移除列表的栈顶元素 3
3     print(a_list.pop())
4     print(a_list)
5     #移除列表中索引为 0 的元素1
6     print(a_list.pop(0))
7     print(a_list)

结果:

3
[1, 2]
1
[2]

 

(六)range()快速初始化list

 代码:

1     #函数 range() 从 2 开始数,然后不断地加 2,直到达到或超过终值
2     even_numbers = list(range(2,11,2))
3     print(even_numbers)

结果:

[2, 4, 6, 8, 10]

 

posted @ 2019-10-10 16:20  蜀山月  阅读(273)  评论(0)    收藏  举报