Python複習筆記跳躍版

眼淚成詩hocc發表於2019-02-16

1.列表和字串,以及字典的使用方法和區別
Python字串

>>> s = `abcdef`
>>> s[1:5]
`bcde`

**str = `Hello World!`**
 
print str           # 輸出完整字串
print str[0]        # 輸出字串中的第一個字元
print str[2:5]      # 輸出字串中第三個至第五個之間的字串
print str[2:]       # 輸出從第三個字元開始的字串
print str * 2       # 輸出字串兩次
print str + "TEST"  # 輸出連線的字串

以上例項輸出結果:

Hello World!
H
Hello World!TEST

Python列表
List(列表) 是 Python 中使用最頻繁的資料型別。
列表可以完成大多數集合類的資料結構實現。它支援字元,數字,字串甚至可以包含列表(即巢狀)。
列表用 [ ] 標識,是 python 最通用的複合資料型別。

**list = [ `runoob`, 786 , 2.23, `john`, 70.2 ]**
tinylist = [123, `john`]
 
print list               # 輸出完整列表
print list[0]            # 輸出列表的第一個元素
print list[1:3]          # 輸出第二個至第三個元素 
print list[2:]           # 輸出從第三個開始至列表末尾的所有元素
print tinylist * 2       # 輸出列表兩次
print list + tinylist    # 列印組合的列表

以上例項輸出結果:

[`runoob`, 786, 2.23, `john`, 70.2]

Python 字典
字典(dictionary)是除列表以外python之中最靈活的內建資料結構型別。列表是有序的物件集合,字典是無序的物件集合。
兩者之間的區別在於:字典當中的元素是通過鍵來存取的,而不是通過偏移存取。
字典用”{ }”標識。字典由索引(key)和它對應的值value組成。

dict = {}
dict[`one`] = "This is one"
dict[2] = "This is two"

tinydict = {`name`:`john`,`code`:6743,`dept`:`sales`}

print (dict[`one`])          # 輸出鍵為`one` 的值
print (dict[2])              # 輸出鍵為 2 的值
print (tinydict)             # 輸出完整的字典
print (tinydict.keys())      # 輸出所有鍵
print (tinydict.values())    # 輸出所有值

輸出結果為:

This is one
This is two
{`dept`: `sales`, `code`: 6734, `name`: `john`}
[`dept`, `code`, `name`]
[`sales`, 6734, `john`]

2. Python的內建函式

2.1內建函式set( )
set() 函式建立一個無序不重複元素集,可進行關係測試,刪除重複資料,還可以計算交集、差集、並集等。
set 語法:

class set([iterable])

引數說明:
iterable — 可迭代物件物件;
返回值
返回新的集合物件。

>>>x = set(`runoob`)
>>> y = set(`google`)
>>> x, y
(set([`b`, `r`, `u`, `o`, `n`]), set([`e`, `o`, `g`, `l`]))   # 重複的被刪除
>>> x & y         # 交集
set([`o`])
>>> x | y         # 並集
set([`b`, `e`, `g`, `l`, `o`, `n`, `r`, `u`])
>>> x - y         # 差集
set([`r`, `b`, `u`, `n`])

2.1內建函式sorted( )
sorted() 函式對所有可迭代的物件進行排序操作
sort 與 sorted 區別:
sort 是應用在 list 上的方法,sorted 可以對所有可迭代的物件進行排序操作。
list 的 sort 方法返回的是對已經存在的列表進行操作,而內建函式 sorted 方法返回的是一個新的 list,而不是在原來的基礎上進行的操作。
sorted 語法

sorted(iterable[, cmp[, key[, reverse]]])

引數說明:
iterable — 可迭代物件。
cmp — 比較的函式,這個具有兩個引數,引數的值都是從可迭代物件中取出,此函式必須遵守的規則為,大於則返回1,小於則返回-1,等於則返回0。
key — 主要是用來進行比較的元素,只有一個引數,具體的函式的引數就是取自於可迭代物件中,指定可迭代物件中的一個元素來進行排序。
reverse — 排序規則,reverse = True 降序 , reverse = False 升序(預設)。
返回值
返回重新排序的列表。

>>>a = [5,7,6,3,4,1,2]
>>> b = sorted(a)       # 保留原列表
>>> a 
[5, 7, 6, 3, 4, 1, 2]
>>> b
[1, 2, 3, 4, 5, 6, 7]

難點:https://www.runoob.com/python…

>>> L=[(`b`,2),(`a`,1),(`c`,3),(`d`,4)]
>>> sorted(L, cmp=lambda x,y:cmp(x[1],y[1]))   # 利用cmp函式
[(`a`, 1), (`b`, 2), (`c`, 3), (`d`, 4)]
>>> sorted(L, key=lambda x:x[1])               # 利用key
[(`a`, 1), (`b`, 2), (`c`, 3), (`d`, 4)]

例二:

students = [(`john`, `A`, 15), (`jane`, `B`, 12), (`dave`, `B`, 10)]
print(sorted(students, key=lambda s: s[2]))
print(type(students))
[(`dave`, `B`, 10), (`jane`, `B`, 12), (`john`, `A`, 15)]
<class `list`>















相關文章