Python 基礎內容2

Python 基礎內容2

list 和 tuple

list列表[]

list是長度可變的有序集合,可隨時添加和刪除其中元素

len()函數獲得list長度

索引從零開始,最後一個元素索引爲len(list) - 1

-1爲索引,獲取最後一個元素

-2,-3以此爲倒數第二第三個

l = [1, 2, 3]
#末尾添加元素
l.append(4)
#指定位置插入元素
l.insert(1, '0')
#刪除末尾元素
l.pop()
#刪除指定位置元素(參數爲索引位置)
l.pop(1)
#替換元素直接賦值
l[1] = 5

list內數據類型可以不同

也可以是另一個list,可以看成是一個二維數組

tuple元組()

與list類似,但一旦初始化就不能修改

可以正常訪問,但不能重新賦值

定義時元素必須被確定下來

定義只有一個元素的元組時()中元素後面加一個,,否則結果不是元組而是數字1

t = ()
#()
#tuple可以爲空
t = (1)
#1
t = (1, )
#(1,)
#python在顯示只有一個元素的元組時也會加一個,來避免歧義

元素可變的tuple:

t = ('a', 'b', ['A', 'B'])
t[2][0] = 'X'
t[2][1] = 'Y'
print(t)
#('a', 'b', ['X', 'Y'])

實際上是tuple中list裏面元素髮生了變化

tuple的不變是指每個元素的指向不變

條件判斷

if,else,elif

注意縮進和:冒號

input()函數的返回類型是str

dict

類似於map,存放鍵值對

可通過key增加鍵值對、更新value

一個key對應一個value

in來判斷key是否存在

d = {'jack': 100, 'bob':101}
'jack' in d
#True

#get()方法,用key來獲取value,key不存在返回None,或者自己指定的value
d.get('jack1')
#返回None時不顯示結果
d.get('jack1', -1)
#-1

#刪除時使用pop(key),對應的值也會被刪除,(會返回值)
d.pop('jack')
#100

dict查找速度快但消耗內存大(以空間來換取時間)

key爲不可變對象,需要通過key進行哈希算法來計算value位置

set

set中會自動過濾重複元素,且會自動重新排序(從小到大)

s = set([1,1,0,0,2,2])
s
#{0,1,2}

#add()添加元素
s.add(3)
s
#{0,1,2,3}
s.add(-1)
s
#{-1,0,1,2,3}

#remove()刪除指定元素

不可變對象

str是不可變對象,但可以調用自身方法

s = '123'
s.replace('1', 0)
#'023'
s
#'123'
#s不變仍爲'123'

所以,對於不變對象來說,調用對象自身的任意方法,也不會改變該對象自身的內容。相反,這些方法會創建新的對象並返回,這樣,就保證了不可變對象本身永遠是不可變的。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章