本文和大家分享的主要是python
中數(shù)據(jù)結(jié)構(gòu)的一些小技巧,一起來看看吧,希望對大家
學(xué)習(xí)python 有所幫助。
排序:
使用sorted
函數(shù)實現(xiàn)排序。
sorted
函數(shù)按照長短、大小、英文字母的順序給每個列表的元素進行排序。這個函數(shù)經(jīng)常在數(shù)據(jù)展示中使用,其中很重要的一點是
sorted
函數(shù)不會改變列表本身,相當(dāng)于先復(fù)制列表然后做排序整理。
1
list = [2,45,21,3,2,1]2
print(sorted(
list))3 #
數(shù)字默認(rèn)從小到大排列
4
print(sorted(
list,reverse =
True))5 # reverse
,逆序排列
6
print(
list)7 # sorted
函數(shù)不改變原列表
推導(dǎo)式(列表的解析式):
將10
個元素裝進列表中,看如下兩種寫法。
1 #
普通寫法
2 a = []
3
for i
in range(1,11):
4 a.append(i)
5 # append
方法用于在列表末尾添加新的對象
6 print(a)
7
8
9 #
推導(dǎo)式
10 b = [i
for i
in range(1,11)]
11 print(b
第一種是普通寫法,先創(chuàng)建一個空列表,然后一個一個裝進去。第二種是推導(dǎo)式,比較簡潔明了。當(dāng)然,推導(dǎo)式在效率上也會比普通方法好很多,我們可以來測算下時間:
1 import
time
2
3 #
普通寫法
4 a = []
5 t1 =
time.
clock()
6
for i in range(1,20000):
7 a.
append(i)
8 print(
time.
clock() - t1)
9
10
11 #
推導(dǎo)式
12 t2 =
time.
clock()
13 b = [i
for i in range(1,20000)]
14 print(
time.
clock() - t2)
循環(huán)列表時獲取元素的索引:
比如,在字母表 letters = ['a','b','c','d','e','f','g']
中,得到每個元素的位置。
1 letters = ['a','b','c','d','e','f','g']
2
for num,letter
in enumerate(letters):
3 # enumerate
函數(shù)用于遍歷序列中的元素以及它們的下標(biāo)
4 print(letter,'
在第
',num + 1,'
個位置
')
后續(xù),開始接觸Python
中的類。
來源:
博客園