python基础基础数据类型2与for循环

发布于 2021-04-17 05:46 ,所属分类:知识学习综合资讯


目录

基础数据类型:

列表(list)

元组(tuple)

for循环




基础数据类型

列表(list)

列表不仅可以储存不同的数据类型,而且可以储存大量数据。而且列表是有序的,有索引值,可切片,方便取值。

(点击查看大图)



列表的创建

'''方式一:(常用)'''l1 = [1, 2, 'pamela']

'''方式二:'''l2 = list() # 创建空列表print(l2) # []
l3 = list('123') # 括号里放可迭代对象print(l3) # ['1', '2', '3']

'''方式三:列表推导式'''l4 = [i for i in range(1, 5)]print(l4) # [1, 2, 3, 4]

(左右滑动查看完整代码)


L


列表的增删改查


1.增

'''append 给列表的最后面追加一个元素'''
l = [1, 2, 'pamela']l.append(666)print(l) # [1, 2, 'pamela', 666]

(左右滑动查看完整代码)



'''insert 在列表的指定位置插入元素'''
l = [1, 2, 'pamela']l.insert(2, 'apple')print(l) # [1, 2, 'apple', 'pamela']

(左右滑动查看完整代码)



'''extend 在列表的最后面迭代着追加一组数据'''
l = [1, 2, 'pamela']l.extend('abcd')print(l) # [1, 2, 'pamela', 'a', 'b', 'c', 'd']l.extend(['apple'])print(l) # [1, 2, 'pamela', 'a', 'b', 'c', 'd', 'apple']l.extend(['apple', 3, 4])print(l) # [1, 2, 'pamela', 'a', 'b', 'c', 'd', 'apple', 'apple', 3, 4]

(左右滑动查看完整代码)


L


2.删

'''pop 删除列表中指定的元素(通过索引),返回删除的元素   默认删除最后一个元素'''
l = [1, 2, 'pamela']ret = l.pop(1)print(ret) # 2print(l) # [1, 'pamela']
l.pop() # 默认删除最后一个元素print(l) # [1]

(左右滑动查看完整代码)



'''remove 删除列表中指定的元素(通过元素)    如果有重名元素,默认删除从左数第一个'''
l = [1, 2, 'pamela']l.remove('pamela')print(l) # [1, 2]
l1 = [1, 2, 'pamela', 123, 'pamela']l1.remove('pamela') # 如果有重名元素,默认删除从左数第一个print(l1) # [1, 2, 123, 'pamela']

(左右滑动查看完整代码)



'''clear 清空列表'''
l = [1, 2, 'pamela']l.clear()print(l) # []

(左右滑动查看完整代码)



'''del 删除列表中指定的元素(通过索引、切片(步长))'''
l = [1, 2, 'pamela']del l[2] # 按照索引删除print(l) # [1, 2]
l1 = [1, 2, 'pamela', 123, 'pamela']del l1[::2] # 按照切片(步长)删除print(l1) # [2, 123]

(左右滑动查看完整代码)




3.改

'''按照索引改值'''l = [1, 2, 'pamela']l[0] = 'abc'print(l) # ['abc', 2, 'pamela']
'''按照切片改值(迭代着增加)'''l1 = [1, 2, 'pamela']l1[1:3] = 'abcdefg'print(l1) # [1, 'a', 'b', 'c', 'd', 'e', 'f', 'g']
'''按照切片(步长)改值(必须一一对应)'''l2 = [1, 2, 'pamela']l2[::2] = '中文'print(l2) # ['中', 2, '文']

(左右滑动查看完整代码)




4.查

l = [1, 2, 'pamela', True, [1, 2, 3]]
'''索引,切片(步长)'''print(l[0]) # 1print(l[-1]) # [1, 2, 3]print(l[1:3]) # [2, 'pamela']print(l[:-1]) # [1, 2, 'pamela', True]print(l[::2]) # [1, 'pamela', [1, 2, 3]]print(l[::-1]) # [[1, 2, 3], True, 'pamela', 2, 1]
'''for循环查询'''for i in l: print(i)

(左右滑动查看完整代码)




列表的其他操作

'''count 统计某个元素在列表中出现的次数'''
l = ['a', 'b', 'c', 'a', 'd', 'e']print(l.count("a")) # 2

(左右滑动查看完整代码)



'''index 从列表中找出某个值第一个匹配项的索引位置'''
l = ['a', 'b', 'c', 'a', 'd', 'e']print(l.index("c")) # 2

(左右滑动查看完整代码)



'''sort 在原位置对列表进行排序'''
l = ['a', 'b', 'c', 'a', 'e', 'd']l.sort()print(l) # ['a', 'a', 'b', 'c', 'd', 'e']

(左右滑动查看完整代码)



'''reverse 将列表中的元素反向存放'''
l = ['a', 'b', 'c', 'a', 'e', 'd']l.reverse()print(l) # ['d', 'e', 'a', 'c', 'b', 'a']

(左右滑动查看完整代码)



'''列表的相加'''l1 = [1, 2, 3]l2 = [4, 5, 6]print(l1+l2) # [1, 2, 3, 4, 5, 6]
'''列表与整数相乘'''l = [1, 2, 3]print(l*3) # [1, 2, 3, 1, 2, 3, 1, 2, 3]




列表的嵌套

l = [1, 2, 'pamela', [1, 'apple', 3,]]
# 将l1中的'pamela'变成大写并放回原处l[2] = l[2].upper()print(l) # [1, 2, 'PAMELA', [1, 'apple', 3]]
# 给小列表[1,'apple',3,]追加一个元素,'pear'l[-1].append('pear')print(l) # [1, 2, 'PAMELA', [1, 'apple', 3, 'pear']]
# 将列表中的'apple'通过字符串拼接的方式在列表中变成'applepie'l[-1][1] += 'pie'print(l) # [1, 2, 'PAMELA', [1, 'applepie', 3, 'pear']]

(左右滑动查看完整代码)




元组(tuple)

元组又称不可变的列表(只读列表),用小括号括起来,里面可以放任何数据类型,可以查询、循环、切片,就是不能修改。

(点击查看大图)



元组的索引切片

t = ('a', 'b', 'pamela', 1, 123)print(t[0], type(t[0])) # a <class 'str'>print(t[-1], type(t[-1])) # 123 <class 'int'>print(t[1:3], type(t[1:3])) # ('b', 'pamela') <class 'tuple'>print(t[:-1]) # ('a', 'b', 'pamela', 1)print(t[::2]) # ('a', 'pamela', 123)print(t[::-1]) # (123, 1, 'pamela', 'b', 'a')

(左右滑动查看完整代码)




元组的其他操作

'''for循环查询'''
t = ('a', 'b', 'pamela', 1, 123)for i in t: print(i)

(左右滑动查看完整代码)



'''index 通过元素找索引(可切片)    找到第一个元素就返回    找不到该元素就报错'''
t = ('a', 'b', 'pamela', 1, 123)print(t.index('pamela')) # 2

(左右滑动查看完整代码)



'''count 获取某元素在元组中出现的次数'''
t = ('a', 'b', 'pamela', 'a', 1, 123)print(t.count('a')) # 2

(左右滑动查看完整代码)



'''如果元组里面只有一个元素,后面要加一个逗号如果只有一个元素且没有逗号,则该元组不是元组,与该元素数据类型一致'''
t = ('a')print(t, type(t)) # a <class 'str'>
t1 = ('a', )print(t1, type(t1)) # ('a',) <class 'tuple'>

(左右滑动查看完整代码)



'''直接从属于元组的元素不能进行增删改但是间接属于元组的元素不一定比如:可以修改元组里面的列表里的数据'''
t = (1, 2, 'pamela', True, [1, 2, 3])t[-1].append(4)print(t) # (1, 2, 'pamela', True, [1, 2, 3, 4])

(左右滑动查看完整代码)



'''应用:元组的拆包(分别赋值,多一个少一个都不行)'''
a, b = (1, 2)print(a) # aprint(b) # b

(左右滑动查看完整代码)




for循环

for循环是用户按照顺序循环可迭代对象的内容。

(点击查看大图)



基本结构

for 变量 in 可迭代对象:  循环体



for循环

msg = 'python123abc'for item in msg:  print(item)
li = [1, 2, 'pamela', True, [1, 2, 3]]for i in li: print(i) dic = {'name': 'pamela', 'age': 18}for k, v in dic.items(): print(k, v)

(左右滑动查看完整代码)



range

range可以指定范围,生成指定数字。

for i in range(1, 10):  print(i) # 1 2 3 4 5 6 7 8 9
for i in range(1, 10, 2): # 步长 print(i) # 1 3 5 7 9
for i in range(10, 1, -2): # 反向步长 print(i) # 10 8 6 4 2 # 利用len和range打印列表的索引li = ['a', 'b', 'pamela', 1, 123]for i in range(len(li)): print(i)

(左右滑动查看完整代码)



enumerate

枚举,对于一个可迭代对象,enumerate将其组成一个索引序列,利用它可以同时获得索引和值。

li = ['a', 'b', 'pamela', 1, 123]for i in enumerate(li):  print(i) # (0, 'a') (1, 'b') (2, 'pamela') (3, 1) (4, 123)
for index, content in enumerate(li, 1): # 起始索引默认是0,可更改 print(index, content) # 1 a 2 b 3 pamela 4 1 5 123

(左右滑动查看完整代码)




相关资源