基本数据类型—列表

列表用于存储任意数目,任意类型的数据集合,是一个有序且可更改的集合,是包含多个元素的有序连续的内存空间

1、列表的创建

# 创建空列表
list1 = []
# 创建包含多种数据类型的列表
list2 = ["python",22,(2,3,4),{"name":"lisa"}] 

# list():可以将任何可迭代数据转换为列表
a = "hello me"
print(list(a)) # ['h', 'e', 'l', 'l', 'o', ' ', 'm', 'e']
print(list(range(0,10))) # [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

2、访问列表值

2.1、根据切片访问列表元素

正向从0开始,方向从-1开始

list_name = ['wzq', 'lgl', 'gz', 'whl', 'sj', 'hxw']
print(list_name[0:6])
print(list_name[-5:-1])

2.2、根据索引访问列表元素

list_name = ['wzq', 'lgl', 'gz', 'whl', 'sj', 'hxw']
print(list_name[3])
print(list_name[2])

3、遍历列表

list1 = ["python","go","java","php"]

方法一:
for i in list:
	print(i)

方法二:
for i in range(len(list1)):
	print(i)

方法三:使用enumerate()函数
for i,val in enumerate(list1):
	print("{}:{}".format(i,val)) //i是索引,val是值

4、列表常用方法

4.1、list()可以将序列(元组,集合,字符串等)转换为列表

aTuple = (123, 'Google', 'W3CSchool', 'Taobao')
list1 = list(aTuple)
print ("列表元素 : ", list1)

str="Hello World"
list2=list(str)
print ("列表元素 : ", list2)

4.2、列表元素的添加方法:包括append(),+运算符操作,extend(),insert()

append()在列表尾部添加新元素,无返回值,所以修改的是原列表。速度快,推荐使用

a = [10,20]
# 第一次追加"ABC"
a.append("ABC")
print(a) # [10, 20, 'ABC']
# 第二次追加123
a.append(123)
print(a) # [10, 20, 'ABC', 123]
+操作运算符是创建新的列表对象,将原列表的元素和新列表元素依次复制到新的列表对象
对于操作大量元素不推荐使用
a = [10,20]
print('原先的a:',a)
print('a原先的id:',id(a)) # 140658436025984
a = a + [40,50]
print('a+运算后的a:',a) # [10, 20, 40, 50]
print('a+运算后的id:',id(a)) # 140658436032640
extend()是在列表末尾一次性追加另一个序列的多个值(比如字符串,列表,元组,集合),不创建新的列表对象
a = [10,20]
b = ["python","go"]
# 将列表b追加到列表a中
a.extend(b)
print(a) # [10, 20, 'python', 'go']
insert(index, obj)将指定元素插入到列表的任意指定位置,然后后面所有元素进行移动,没有返回值
a= [10,20,30,40,50]
# 在索引为3的位置插入"hello"
a.insert(3,"hello")
print(a) # [10, 20, 30, 'hello', 40, 50]

4.3、列表元素的删除方法
包括del ,pop(),remove()

del是删除列表指定位置的元素,后面的元素也会进行移动,也可以删除整个列表
a= [10,20,30,40,50]
# 指定删除索引为2的元素
del a[2]
print(a) # [10, 20, 40, 50]
pop()删除列表的指定元素,并返回该元素的值,不指定默认是最后一个元素
a= [10,20,30,40,50]
# 指定删除索引为2的元素
b1 = a.pop(2)
print(a,b1) # [10, 20, 40, 50]  30
# 默认删除最后一个
b2 = a.pop()
print(a,b2) # [10, 20, 40]   50
remove()首次出现的指定元素,不存在该元素就抛异常
a= [10,20,30,40,50,20,10,20]
# 删除首次出现的20
a.remove(20)
print(a) # [10, 30, 40, 50, 20, 10, 20]

4.4、统计列表元素出现的位置

count() 方法用于统计某个元素在列表中出现的次数
a = [55,22,33,44,22,66,33,22]
print(a.count(22)) # 3

4.5、返回字符串长度

len() 方法返回列表元素个数
a = [55,22,33,44,22,66,33,22]
print('列表a的长度为:',len(a))

4.6、列表排序

sort([func])用于对原列表进行排序,如果指定参数,则使用比较函数指定的比较函数,没有返回值,修改原列表
func -- 可选参数, 如果指定了该参数会使用该参数的方法进行排序
a = [23,4,6,1,33,90,78,100,-1,-34]
print('排序前的a列表为:',a)
a.sort() #默认是升序排列 
print('排序后的a列表为:',a)
a.sort(reverse=True) #降序排列
print('降序排序后的a列表为:',a)

4.7、max() min() sum()

针对数值型的内置函数使用
a = [10,20,30]
print('a的最小值为:',min(a))
print('a的最大值为:',max(a))
print('a的和为:',sum(a))

针对非数值型内置函数的使用
a = ['ban','pen','can']
print('a的最小值为:',min(a))
print('a的最大值为:',max(a))
print('a的和为:',sum(a)) # 对非数值类型列表运算都会报错

4.8、清空列表

将列表元素都清空,没有返回值
a = [10,20,30]
a.clear()
print(a) # []

4.9、复制列表

copy()复制列表,返回复制后的新列表
a = [10,20,30]
b = a.copy() 
print(b) # [10, 20, 30]
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值