python基础--3--列表-元祖

一、python-列表

1.1 列表介绍
  • 格式
变量 =  [,,,,,]
  • 案例
namelist = ['xiaohua','xiaoming','xiaowang']
  • 案例:不同类型
namelist = ['xiaowang',12,[1,2,3],(1,2)]
1.2 列表相关操作
1.2.1 列表新增
append
  • 列表和字符串
names1 = ['xiaoWang','xiaoZhang','xiaoHua']
names1.append("xiaohan")
print(names1)

# ['xiaoWang', 'xiaoZhang', 'xiaoHua', 'xiaohan']
  • 列表和列表
names1 = ['xiaoWang','xiaoZhang','xiaoHua']
name = [1,2,3,6]
names1.append(name)
print(names1)

# ['xiaoWang', 'xiaoZhang', 'xiaoHua', [1, 2, 3, 6]]
extend
  • 列表和字符串
names1 = ['xiaoWang','xiaoZhang','xiaoHua']
names1.extend("hanmin")
print(names1)

# ['xiaoWang', 'xiaoZhang', 'xiaoHua', 'h', 'a', 'n', 'm', 'i', 'n']
  • 列表和列表
names1 = ['xiaoWang','xiaoZhang','xiaoHua']
names2 = [12,23,65,45]
names1.extend(names2)
print(names1)

# ['xiaoWang', 'xiaoZhang', 'xiaoHua', 12, 23, 65, 45]
  • exend和append的区别

append的最终列表添加的是一个元素,extend的最终列表中显示的是追加的多个元素

insert
  • 指定索引新增数据
names1 = ['xiaoWang','xiaoZhang','xiaoHua']
names1.insert(1,'hanmin')
print(names1)

# ['xiaoWang', 'hanmin', 'xiaoZhang', 'xiaoHua']
  • 指定索引不存在(默认添加在了最后)
names1 = ['xiaoWang','xiaoZhang','xiaoHua']
names1.insert(12,'hanmin')
print(names1)

# ['xiaoWang', 'xiaoZhang', 'xiaoHua', 'hanmin']
1.2.2 列表修改

指定所以才可修改

索引修改
  • 索引存在时修改
names1 = ['xiaoWang','xiaoZhang','xiaoHua']
names1[2] = 'hanmin'
print(names1)

# ['xiaoWang', 'xiaoZhang', 'hanmin']
  • 索引不存在是修改
names1 = ['xiaoWang','xiaoZhang','xiaoHua']
names1[12] = 'hanmin'
print(names1)

# IndexError: list assignment index out of range
1.2.3 列表删除

del:根据下标进行删除
pop:删除最后一个元素
remove:根据元素的值进行删除

del
names1 = ['xiaoWang','xiaoZhang','xiaoHua']
del names1[0]
print(names1)

# ['xiaoZhang', 'xiaoHua']
pop(默认最后一个元素)
  • 默认
names1 = ['xiaoWang','xiaoZhang','xiaoHua']
names1.pop()
print(names1)

# ['xiaoWang', 'xiaoZhang']
  • 指定下标
names1 = ['xiaoWang','xiaoZhang','xiaoHua']
names1.pop(1)
print(names1)

# ['xiaoWang', 'xiaoHua']
remove
names1 = ['xiaoWang','xiaoZhang','xiaoHua']
names1.remove("xiaoWang")
print(names1)

# ['xiaoZhang', 'xiaoHua']
1.2.4 列表的查询
index

index查询列表中的元素,如果存在就返回给元素的索引,不存在就报错

  • 有对应元素
names1 = ['xiaoWang','xiaoZhang','xiaoHua']
print(names1.index("xiaoWang"))

# 0
  • 无元素
names1 = ['xiaoWang','xiaoZhang','xiaoHua']
print(names1.index("hanmin"))

# ValueError: 'hanmin' is not in list
count

count查询列表中的元素的个数

name = [1,2,5,6,0,5]
print(name.count(5))

# 2
1.2.5 列表的排序
sort

sort方法是将list按特定顺序重新排列,默认为由小到大,参数reverse=True可改为倒序,由大到小。
reverse方法是将list反转

  • 排序
name = [1,2,5,6,0,5]
name.sort()
print(name)

# [0, 1, 2, 5, 5, 6]
  • 反转
name = [1,2,5,6,0,5]
name.sort(reverse=True)
print(name)

# [6, 5, 5, 2, 1, 0]
1.2.6 列表的循环取值
  • for循环
name = [1,2,5,6,0,5]
for i in name:
    print(i)
  • while循环
name = [1,2,5,6,0,5]
i = 0
while i < len(name):
    print(name[i])
    i += 1
1.2.7 列表的嵌套

类似while循环的嵌套,列表也是支持嵌套的

  • 格式

变量名=[,[,]]

  • 案例
names = ['xiaoWang','xiaoZhang','xiaoHua',["xiaomi","xiaolan"]]
print(names[3][0])

# xiaomi

二、元祖

2.1 元祖介绍

Python的元组与列表类似,不同之处在于元组的元素不能修改。元组使用小括号,列表使用方括号。

2.2 元祖相关操作
  • 格式
变量名=(,,,,)

aTuple=(23,35,56,34,11,21)
2.2.1 访问元组

通过索引取数据

  • 索引值存在
aTuple=(23,35,56,34,11,21)
print(aTuple[0])

# 23
  • 索引值不存在
aTuple=(23,35,56,34,11,21)
print(aTuple[10])

# IndexError: tuple index out of range
2.2.2 查询个数

count查询出现的个数

aTuple=(23,35,56,34,11,21,23)
print(aTuple.count(23))

# 2
2.2.3 查询索引

index:查询元素的索引,有对应的元素返回对应的索引,否则报错

  • 有对应的元素
aTuple=(23,35,56,34,11,21,23)
print(aTuple.index(35,0,5))

# 1
  • 无对应的元素
aTuple=(23,35,56,34,11,21,23)
print(aTuple.index(11,0,3))

# ValueError: tuple.index(x): x not in tuple
2.2.4 修改数据(不能修改)
aTuple=(23,35,56,34,11,21,23)
aTuple[0] = 20
print(aTuple)

# TypeError: 'tuple' object does not support item assignment
2.2.5 :类型转换
  • 列表转换元组
list1 = [1,2,3,5,6]
a = tuple(list1)
print(a)

# (1, 2, 3, 5, 6)
  • 元组转换列表
tup = (1, 2, 3, 5, 6)
b = list(tup)
print(b)

# [1, 2, 3, 5, 6]
2.2.6 元组的循环取值
  • for循环
tup = (1, 2, 3, 5, 6)
for i in tup:
    print(i)
  • while循环
tup = (1, 2, 3, 5, 6))
i = 0
while i < len(tup):
    print(tup[i])
    i += 1
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值