Python基本数据类型之列表
补充:range()方法
python2:
range 立即创建
xrange for循环的时候才一个一个创建
Python3:
range for循环的时候才一个一个创建
补充:列表是有序的,字符串可以和列表一样取值但不可和列表一样修改值
"""str() 转换为字符串类型 int() 把指定类型转换为做整型 bool()把指定类型转换为布尔型""" v = str(123) v = bool("") v = int("678")
列表(list) : 用中括号括起来,逗号分割每个元素,元素可以是数字、字符串、列表、布尔值等等
#列表可嵌套
例如:li = [1,12,"alex"]
li = [12,31,["呵呵了",23,5,"abc"],123,1,89]
列表取值: 索引取值或切片取值,注意切片取得的是列表,列表的值是可以修改的。
print( li[3] ) li[3:-1]
修改值方法:1. li[索引号]=value
2.切片修改:li[0:2] = [120,22]
#删除列表值的方法
del li[索引号]
in 操作
li = [1,120,9,"age",["呵呵哒",["abc",12],10],"alex"] v = 12 in li print(v) ========>False
嵌套列表的取值
li = [1,2,3,["😀",0,[”🆗“,"没毛病"],"🌫"],"alex","qwe"] v = li[3][2][2] print(v) =========> "没毛病"
转换为列表类型:list()
s = "abcdefghijklmnopqrstuvwxyz" new_li = list(s) print(new_li)
list类中提供的方法:
#append追加元素,也可以追加列表 li = [1,2,3,4] li.append("alex") li.append([123,456]) #clear清空列表 li = [1,2,3,4] li.clear() #copy 拷贝,浅拷贝 li = [1,2,3] v = li.copy() print(v) ======>[1,2,3] #count 计算元素出现的次数,参数必需添加 li = [1,2,"h",43,2] v = li.count(2) print(v) ======> 2 #extend扩展原来列表,可迭代对象 注意:与列表形似都可以添加元素,但不完全相同 li = [1,2,3] li.extend([4,5]) print(li) ======> [1,2,3,4,5] #index 根据值找到当前值第一个索引位置,左侧优先 li = [1,2,3] v = li.index(3) print(v) ======> 2 #insert在指定索引位置插入元素 li = [1,2,3,4] li.insert(1,[99,"aaa"]) print(li) ======>[1,[99,"aaa"],2,3,4] #pop和remove都是删除 #pop删除指定索引的值 li = [1,2,3,4] li.pop(索引号) #pop默认删除最后一个 print(li) #remove删除指定值的元素 li = [11,22,33,44] li.remove(22) print(li) ======>[11,33,44] #reverse将当前列表进行反转 li = [11,22,33,44] li.reverse() print(li) ======>[44,33,22,11] #sort排序 默认从小到大,从大到小用reverse=True参数 li = [1,3,5,1,2,9,7,5] li.sort(reverse=True) print(li) ======>[9,7,5,5,3,2,1,1]
#append追加元素,也可以追加列表 li = [1,2,3,4] li.append("alex") li.append([123,456]) #clear清空列表 li = [1,2,3,4] li.clear() #copy 拷贝,浅拷贝 li = [1,2,3] v = li.copy() print(v) ======>[1,2,3] #count 计算元素出现的次数,参数必需添加 li = [1,2,"h",43,2] v = li.count(2) print(v) ======> 2 #extend扩展原来列表,可迭代对象 注意:与列表形似都可以添加元素,但不完全相同 li = [1,2,3] li.extend([4,5]) print(li) ======> [1,2,3,4,5] #index 根据值找到当前值第一个索引位置,左侧优先 li = [1,2,3] v = li.index(3) print(v) ======> 2 #insert在指定索引位置插入元素 li = [1,2,3,4] li.insert(1,[99,"aaa"]) print(li) ======>[1,[99,"aaa"],2,3,4] #pop和remove都是删除 #pop删除指定索引的值 li = [1,2,3,4] li.pop(索引号) #pop默认删除最后一个 print(li) #remove删除指定值的元素 li = [11,22,33,44] li.remove(22) print(li) ======>[11,33,44] #reverse将当前列表进行反转 li = [11,22,33,44] li.reverse() print(li) ======>[44,33,22,11] #sort排序 默认从小到大,从大到小用reverse=True参数 li = [1,3,5,1,2,9,7,5] li.sort(reverse=True) print(li) ======>[9,7,5,5,3,2,1,1]
元组: 类 tuple 样式:tu = (1,2,3,4) 同上,可通过tuple()进行类型转换,有序
元素不可被修改,元组不能被增加或者删除。可以进行索引取值或者切片取值。
#可以被for循环,可迭代对象 tu = (1,2,3,4) for item in tu: print(item) #tuple( ) s = "asdfasdf" li = [1,2,3,4] tu = (abcdefg) v1 = tuple(li) v2 = tuple(s) v3 = list(tu) print(v1,v2,v3) ============>> (1,2,3,4,)(a,s,d,f,a,s,d,f,)[a,b,c,d,f,g]
当元组内均为字符串的时候,可利用 " ".join(元组)进行连接
tu = ("one","two","three",) v = "".join(tu) print(v) ===========>> onetwothree
extend()方法可添加元素
li = ["asd","fgh"] li.extend((12,3,4,5,)) print(li) =======>["asd","fgh",12,3,4,5]
tuple的取值
#元组的取值 tu = (111,"alex",(11,22,),[(33,44)],Ture,33,44,) v = tu[3][0][0] print(v) ======>>33 #注意元组的一级元素不可以被删除/增加/修改,二级可以 tu = (111,"alex",(11,22,),[(33,44)],Ture,33,44,) tu[3][0] = 567 print(tu) ======>>(111,"alex",(11,22,),[567],Ture,33,44,)
元组的两个魔法:
#count(元素)获取指定元素在元组中出现的次数 tu = ("one","two","three",) print(count("one")) ======>> 1 #index(元素)获取指定元素的索引值 tu = ("one","two","three",) print(index("one")) ======>> 0
********若想要修改元组,可通过将元组改成列表进行修改,之后再修改过来。*******
浙公网安备 33010602011771号