1. 程式人生 > >python 操縱字串、列表、字典

python 操縱字串、列表、字典

-------列表中字串的去重
方法1:去除並保留列表的順序,思路看起來比較清晰簡單 ,也可以保持之前的排列順序
a=[6,1,2,1,2,3,4,5,6,4]
new_a=[]
for id in a:
    if id not in new_a:
        new_a.append(id)
print(new_a)
#[6, 1, 2, 3, 4, 5]

方法2:使用set方法,使用了集合方法set進行處理,去除之後預設為升序排序
a=[6,2,1,2,3,4,5,6,4]
print(list(set(a)))
#[1, 2, 3, 4, 5, 6]
方法3::對列表進行操作:
k1=[1,2,3,4,5]
k2=[6,7,8,9,10,6,6]
#根據元素索引刪除列表中某個元素
k1.pop(1)
或者del k1[1]  #del還可以刪除整個列表
#根據元素名來刪除元素
k1.remove(1)
#清空列表
k1.clear()
#查找出元素所在的索引位置
k1.index(5)
#統計元素的次數
k2.count(6)
方法4:使用keys()方法
org=[1

,0,3,7,7,5]
formatList=list({}.fromkeys(org).keys())
print(formatList)
------列表、字串的拼接
1.1、兩個列表的拼接extend方法
L1=[1,2,3,4,5]
L2=[10,20,30,40,50]
L1.extend(L2)
print(L1)
#[1, 2, 3, 4, 5, 10, 20, 30, 40, 50]
1.2、使用切片方法
L1=[1,2,3,4,5]
L2=[10,20,30,40,50]
L1[len(L1):len(L1)]=L2#格式時L1[位置:位置]=L2 可以將L2加入任意L1指定位置
print(L1)
#[1, 2, 3, 4, 5, 10, 20, 30, 40, 50]
2、字串的拼接
+和,不多講解
join方法:用於將序列中的元素以指定的字元連線生成一個新的字串。
s1,s2='-',''
seq=('you','are','big','shabi')
print(s1.join(seq))#you-are-big-shabi
print(s2.join(seq))#youarebigshabi
3、列表中指定位置新增字元
sq=[1,2,3]
sq.insert(2,'a') #[1,2,'a',3]

------字典的排序
my_dict={"cc":100,"aa":200,"bb":10}
#按鍵排序
print(sorted(my_dict.items(),key=lambda x:x[0]))
#按值排序
print(sorted(my_dict.items(),key=lambda x:x[1]))
#####上述只是產生了一個新的字典,原字典順序不改變
_____
--字典的取值,由於可能存在鍵值不存在造成報錯,使用dict.get()方法
print(my_dict.get('cc','Not found')) #100
print(my_dict.get('dd','Not found'))#由於dd不存在,使用get方法,不報錯,返回Not found
--提取字典中部分子集 使用字典推導式篩選
students_score={'jack':80,'james':91,'leo':100,'sam':60}
good_score={name:score for name,score in students_score.items() if score>=90}
print(good_score)
--字典的計算
#獲取值的最小值
print(min(students_score.values()))
#獲取值的最大值
print(max(students_score.values()))