美文网首页Python 3.7入门篇Pythonpython
7.基本数据类型 tuple/list

7.基本数据类型 tuple/list

作者: HassGy | 来源:发表于2019-07-27 16:53 被阅读1次

元组(tuple)

tuple类型就是元组,用圆括号( )表示,不同元素逗号隔开。

☑一旦初始化赋值,tuple的大小以及元素不可发生修改操作
☑这⾥元组的不可变的意思是子元素不可变;
而子元素内部的子元素是可以变, 这取决于⼦元素是否是可变对象.
☑tuple的操作速度比list的要快。
☑常用于开发一个常量集,只有读取操作,比较快速方便。
☑元组里面可以放任何类型的数据。
☑初始化一个元素的元组,后面一定加逗号,不然解释为int,而不是元组。


👉查询(仅有的操作,记住,元组不可以做修改操作)

t1 = (1, "hassgy", "Amy", "Tom", "我爱你")
print(t1)

# 索引
print(t1[0])
print(t1[1])

# 切片
print(t1[2:3])
     
# for循环遍历元组
for element in t1:
    print(element)
   
# 尝试修改元组
t1[1] = "hass" 
# 报错 'tuple' object does not support item assignment
------------------------------------------------------
t2 = (1, "哈哈", [], "呵呵")
# t2[2] = ["fdsaf"] 
# 上面这么改不可以!

# 用append方法
t2[2].append("小红") # 可以改了. 没报错
t2[2].append("小明")
print(t2)
------------------------------------------------------
上面的修改可以看成元组里面的嵌套使用,主要取决于子元素是否可以修改。
其他方法:count,index,len()等。

列表(list)

list类型就是列表,用中括号[ ]表示,不同元素用逗号隔开。

☑初始化以后,相对元组,可以对内容再次修改。
☑常用于开发一组列表值,经常对其进行的操作。
☑列表可以存放任何数据类型,混合使用都没问题。
☑列表和元组一样,也是可以做索引,切片的操作,一样的使用方法。
☑列表里的字符串是可以修改的,而列表和字符串不一样,列表可以发生改变


列表-内置函数
👉增加 append / insert / extend

list1 = ["hassgy","Amy","dady"]

# 直接添加 append()
list1.append("hello")

# 索引添加 insert()
list1.insert(1,"error")

# 迭代添加 extend()
list1.extend(["我喜欢","你也喜欢"])
print(list1)

👉删除 pop / remove / clear / del

lst = ["小明", "小黑", "小白", "小红"]
print(lst)

# 删除最后⼀个
deleted = lst.pop() 
print("被删除的", deleted)
print(lst)

# 删除2号元素
el = lst.pop(2) 
print(el)
print(lst)

# 删除指定元素
lst.remove("小红") 
print(lst)

# 删除不存在的元素会报错
lst.remove("小天") 
print(lst)

# 清空list
lst.clear() 
print(lst)

# 切⽚删除
del lst[1:3]
print(lst)

👉修改 -索引,切片修改

# 修改
lst = ["太⽩", "太⿊", "五⾊", "银王", "⽇天"]

# 把1号元素修改成太污
lst[1] = "太污" 
print(lst)

# 切⽚修改也OK. 如果步⻓不是1, 要注意. 元素的个数
lst[1:4:3] = ["小麻瓜", "小青瓜"] 
print(lst)

# 如果切⽚没有步⻓或者步⻓是1. 则不⽤关⼼个数
lst[1:4] = ["你这个坑货"] 
print(lst)

👉查询 -for循环迭代查询输出

lst = [1,"小明",(1,2,3)]
for el in lst:
    print(el)

👉其他操作

lst = ["太⽩", "太⿊", "五⾊", "银王", "⽇天"]

# 字符串有多少个
lst.count("太白")
lst = [2,1,9,4,6]

# 升序排序
lst.sort()

# 降序排序
lst.sort(reverse=True)

# 降序排序
lst.reverse()

# 返回列表的长度
length = len(lst)

列表的嵌套使用
降维剖析,lst[n][m],一层一层读进去。

lst = [3, "小⽩", "hassgy", ["小马", ["小花"], "小王"]]
# 找到hassgy
print(lst[2])

# 找到小白到hassgy
print(lst[1:3])

# 找到小白以及白字
print(lst[1][1])

# 将hassgy拿到. 然后⾸字⺟⼤写. 再扔回去
s = lst[2]
s = s.capitalize()
lst[2] = s
print(lst)

# 简写
lst[2] = lst[2].capitalize()
print(lst)

# 把小⽩换成小⿊
lst[1] = lst[1].replace("⽩", "⿊")
print(lst)

# 把小马换成大马
lst[3][0] = lst[3][0].replace("小", "大")
print(lst[3][0])
lst[3][1].append("小雪")
print(lst)

😳学习完tuple以及list,我们了解一个以后常见的函数:range(n,m,step) 区间函数

range(start, stop, step)
#     开始点,结束点,步长  
x = range(6)
for n in x:   
    print(n) 
----------------------------     
x = range(3, 6)
for n in x:  
    print(n)  
----------------------------    
x = range(3, 20, 2)
for n in x:  
    print(n)

敲代码试一下,看看打印啥,了解并学会运用range().

相关文章

网友评论

    本文标题:7.基本数据类型 tuple/list

    本文链接:https://www.haomeiwen.com/subject/awlmlctx.html