python第四課

1.條件判斷

age = 3
if age >= 18:
    print('adult')
elif age >= 6:
    print('teenager')
else:
    print('kid')

由于輸入的是字符串,需要用int轉一下

s = input('birth: ')
birth = int(s)
if birth < 2000:
    print('00前')
else:
    print('00后')

2.循環(huán)

Python的循環(huán)有兩種,一種是for...in循環(huán),依次把list或tuple中的每個元素迭代出來,看例子:

names = ['Michael', 'Bob', 'Tracy']
for name in names: 
      print(name)

如果要計算1-100的整數(shù)之和,從1寫到100有點困難,幸好Python提供一個range()函數(shù),可以生成一個整數(shù)序列,再通過list()函數(shù)可以轉換為list。比如range(5)生成的序列是從0開始小于5的整數(shù)

>>> list(range(5))
[0, 1, 2, 3, 4]

第二種循環(huán)是while循環(huán),只要條件滿足,就不斷循環(huán),條件不滿足時退出循環(huán)。比如我們要計算100以內所有奇數(shù)之和,可以用while循環(huán)實現(xiàn):

sum = 0
n = 99
while n > 0:
    sum = sum + n
    n = n - 2
print(sum)

3.dict

就是map

>>> d = {'Michael': 95, 'Bob': 75, 'Tracy': 85}
>>> d['Michael']
95

由于一個key只能對應一個value,所以,多次對一個key放入value,后面的值會把前面的值沖掉:

>>> d['Jack'] = 90
>>> d['Jack']
90
>>> d['Jack'] = 88
>>> d['Jack']
88

如果key不存在,dict就會報錯:

>>> d['Thomas']
Traceback (most recent call last): File "<stdin>", line 1, 
in <module>KeyError: 'Thomas'

要避免key不存在的錯誤,有兩種辦法,一是通過in判斷key是否存在:

>>> 'Thomas' in d
False

二是通過dict提供的get方法,如果key不存在,可以返回None,或者自己指定的value:

>>> d.get('Thomas')
>>> d.get('Thomas', -1)
-1

注意:返回None的時候Python的交互式命令行不顯示結果。
要刪除一個key,用pop(key)方法,對應的value也會從dict中刪除:

>>> d.pop('Bob')
75
>>> d{'Michael': 95, 'Tracy': 85}

要保證hash的正確性,作為key的對象就不能變。在Python中,字符串、整數(shù)等都是不可變的,因此,可以放心地作為key。而list是可變的,就不能作為key:

4.set

set和dict類似,也是一組key的集合,但不存儲value。由于key不能重復,所以,在set中,沒有重復的key。

要創(chuàng)建一個set,需要提供一個list作為輸入集合:

>>> s = set([1, 2, 3])
>>> s{1, 2, 3}

顯示的順序也不表示set是有序的。。重復元素在set中自動被過濾:
通過add(key)方法可以添加元素到set中,可以重復添加,但不會有效果

>>> s.add(4)
>>> s{1, 2, 3, 4}
>>> s.add(4)
>>> s{1, 2, 3, 4}

通過remove(key)方法可以刪除元素:

>>> s.remove(4)
>>> s
{1, 2, 3}
```
**set可以看成數(shù)學意義上的無序和無重復元素的集合,因此,兩個set可以做數(shù)學意義上的交集、并集等操作:**
```
>>> s1 = set([1, 2, 3])
>>> s2 = set([2, 3, 4])
>>> s1 & s2
{2, 3}
>>> s1 | s2
{1, 2, 3, 4}
```
####不可變對象
str是不變對象,而list是可變對象。

對于可變對象,比如list,對list進行操作,list內部的內容是會變化的,比如:
```
>>> a = ['c', 'b', 'a']
>>> a.sort()
>>> a
['a', 'b', 'c']
```
而對于不可變對象,比如str,對str進行操作呢:
```
>>> a = 'abc'
>>> a.replace('a', 'A')
'Abc'
>>> a'abc'
```
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

  • 一、python 變量和數(shù)據(jù)類型 1.整數(shù) Python可以處理任意大小的整數(shù),當然包括負整數(shù),在Python程序...
    績重KF閱讀 2,016評論 0 1
  • 最近在慕課網(wǎng)學習廖雪峰老師的Python進階課程,做筆記總結一下重點。 基本變量及其類型 變量 在Python中,...
    victorsungo閱讀 1,943評論 0 5
  • Python 是一種相當高級的語言,通過 Python 解釋器把符合語法的程序代碼轉換成 CPU 能夠執(zhí)行的機器碼...
    Python程序媛閱讀 2,039評論 0 3
  • Python變量和數(shù)據(jù)類型 數(shù)據(jù)類型 print語句 注釋 Python的注釋以 # 開頭,后面的文字直到行尾都算...
    Gaolex閱讀 3,183評論 5 55
  • 本教程基于Python 3,參考 A Byte of Python v1.92(for Python 3.0) 以...
    yuhuan121閱讀 3,421評論 1 6

友情鏈接更多精彩內容