python學(xué)習(xí)小結(jié)2

兩種循環(huán)

1.for...in循環(huán)

nums = ['0000', '1111', '2222']
for num in nums:
    print(num)

2.while循環(huán)

sum = 0
n = 100
while n > 0:
    sum = sum + n
    n = n - 1
print(sum)

break語(yǔ)句可以在循環(huán)過(guò)程中直接退出循環(huán),而continue語(yǔ)句可以提前結(jié)束本輪循環(huán),并直接開(kāi)始下一輪循環(huán)。

dict字典

people = {'Jerry': 21, 'Tom': 25, 'Tony': 47}
print(people['Jerry'])
people['Tom']=28            #設(shè)置鍵值
print(people['Tom'])        #28
print('kelly' in people)   #判斷Key是否存在print(d.get('Thomas'))  false
print(people.get('kelly'))   #判斷Key是否存在 不存在返回none或者自己指定的value  none
print(people.get('kelly',-2))   #不存在返回自己指定的value -2

people.pop('Tom')               #刪除一個(gè)key
print(people)                  # {'Jerry': 21, 'Tony': 47}

dict全稱dictionary,在其他語(yǔ)言中稱為map,使用鍵-值(key-value)存儲(chǔ),優(yōu)點(diǎn)是具有極快的查找速度。

注意:dict內(nèi)部存放的順序和key放入的順序是沒(méi)有關(guān)系的

和list比較,dict有以下幾個(gè)特點(diǎn):

1.查找和插入的速度極快,不會(huì)隨著key的增加而變慢;
2.需要占用大量的內(nèi)存,內(nèi)存浪費(fèi)多。

而list相反:
1.查找和插入的時(shí)間隨著元素的增加而增加;
2.占用空間小,浪費(fèi)內(nèi)存很少。
所以,dict是用空間來(lái)?yè)Q取時(shí)間的一種方法。

set

set和dict類似,也是一組key的集合,不存儲(chǔ)value,并且key值不能重復(fù)。

s = set([1, 2, 3,4,5,4,3,4,2,1])
print(s)     #{1, 2, 3, 4, 5}

add(key)添加元素

s.add('55')
print(s)     #{1, 2, 3, 4, 5, '55'}

remove(key)刪除元素

 s.remove(4)
print(s)  #{1, 2, 3, 5, '55'}

函數(shù)

print(abs(-22)) # 絕對(duì)值  22

函數(shù)

定義一個(gè)函數(shù)要使用def語(yǔ)句,依次寫(xiě)出函數(shù)名、括號(hào)、括號(hào)中的參數(shù)和冒號(hào):,然后,在縮進(jìn)塊中編寫(xiě)函數(shù)體,函數(shù)的返回值用return語(yǔ)句返回。
demo:

def my_abs(x):
    if not isinstance(x, (int, float)):
        raise TypeError('bad operand type')
    if x >= 0:
        return x
    else:
        return -x
print(my_abs(777))       #777
print(my_abs(-999))      #999

def calc(numbers):      #參數(shù)
    sum = 0
    for n in numbers:
        sum = sum + n * n
    return sum
print(calc([2,5,7,9,4]))   #計(jì)算a*a+b*b+...的和

def calc(*numbers):       #*表示可變參數(shù),可以不傳
    sum = 0
    for n in numbers:
        sum = sum + n * n
    return sum
print(calc(22,6,7,8,9,10))   #814
print(calc())                 #0

迭代

for i, value in enumerate(['A', 'B', 'C']):  
    print(value)
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

推薦閱讀更多精彩內(nèi)容