學習python核心技術與實戰時,在第10講中,講師留下了乙個問題:
在解決這個問題之前,先解決如下問題:
1)列表的正序與倒序
2)找到列表中最大值,並輸出
3)字典按值進行正序與倒序
4)找到字典中值最大的,並輸出key跟value(鍵值對)
5)字典轉換為列表
# 列表排序
l =[2,
5,7,
3,9,
1]# 順序
l.sort(
)print
(l)# 倒序
ll =
sorted
(l, reverse=
true
)print
(ll)
# 通過倒序sorted()後,獲取列表第乙個值,則為最大值
print
(ll[0]
)# 冒泡法找到最大值
l2 =[2
,5,7
,3,9
,1]for i in
range(0
,len
(l2)):
if l2[i]
> l2[0]
: l2[0]
= l2[i]
print
(l2[0]
)# 字典按value來倒序排列
d =ddd =
sorted
(d.items(
), key=
lambda x: x[1]
, reverse=
true
)print
(ddd)
# 未知如何獲取字典中的第乙個鍵值對?????
key1 =
list
(d.keys())
value1 =
list
(d.values())
zip(key1[0:
1], value1[0:
1])print
("以上"
)# 字典key轉換為列表
key =
list
(d.keys())
print
(key)
# 字典value轉換為列表
value =
list
(d.values())
print
(value)
拓展:
1、元組、列表、字典的區別
1、列表list:有序,可變。
2、元組tuple:有序,不可變。
3、字典dict:無序,字典的key是不可變的,值是可變的;在python中字串,數字,元組都是不可變的物件。
4、序列:列表,元組和字串都序列;即成員有序排列,可以通過下標訪問,可以進行切片操作。字串(普通字串和unicode字串)
5、集合:沒有順序的簡單物件的聚集。可以檢查成員是否存在,是否是另乙個集合的子集,得到兩個集合的交集等等
6、複製乙個列表或者類似的序列或者其他複雜物件,那麼必須使用切片操作符來去的拷貝。當你建立乙個物件並將它賦值給乙個變數的時候,這個變數僅僅引用那個物件,而不是表示這個物件本身!也就是說,變數名指向你計算機中儲存那個物件的記憶體。這被稱作名稱到物件的繫結。
2、sort()與sorted()
sort
()與sorted(
)的不同在於,sort是在原位重新排列列表,而sorted(
)是產生乙個新的列表。
sort 是應用在 list 上的方法,sorted 可以對所有可迭代的物件進行排序操作。
當列表由list(或者tuple)組成時,預設情況下,sort和sorted都會根據list[0](或者tuple[0])作為排序的key,進行排序。
引數:基於key函式
list1.
sort
(key=lambda x:x[2]
)sorted(list1, key=lambda x:x[2]
)基於reverse函式
reverse=false為公升序排序(預設);reverse=true為降序排序
python列表,字典排序
python對容器內資料的排序有兩種,一種是容器自己的sort函式,一種是內建的sorted函式。sort函式和sorted函式唯一的不同是,sort是在容器內 in place 排序,sorted生成乙個新的排好序的容器。dic dict sorted dic.items key lambda d...
python列表,字典
1字串處理 s.startswith adfaas s這個字串是不是以adfaas開始 s.endswith adfaas s這個字串是不是以adfaas結束 s.find substring,start end 可指範圍查詢子串,返回索引值,否則返回 1 s.rfind substring,sta...
Python 列表 字典
陣列 只能儲存同一種資料型別的結構 元組tuple 定義列表 定義元組 元組被稱為被帶了緊箍咒的列表,那麼就證明元組與列表的功能類似,只是不如列表強大。元組是不可變的資料型別 不能修改元組中的元素 列表是可變資料型別,可以修改元素。那就有了增刪改查 拿出列表最後乙個元素,最後乙個元素是列表,再拿出列...