第一周python成長之路day04

2021-10-06 19:55:13 字數 4915 閱讀 1875

2、可變、不變型別

4,、身份運算is與==

5、if 判斷

一、布林值(補充)

布林型別、只有兩個值true和fales

1,顯示的布林值

直接定義布林型別的變數值

tag = true

print(tag,type(tag))

通常是通過比較運算得到的布林值的

print(10>3)

print(「egon」 == 「egon」)

隱式的布林值

隱式的布林值為false的資料型別有:0, none,空(空字串、空型別、空布林值)

111111 and 222222

布林值用於條件

print(bool(0))

print(bool(none))

print(bool(""))

print(bool(""))

1 and 2 or not 3

算到那個輸出就是誰

print(1 or 3)

print(1 and 3)

print(0 and 2 and 1)

print(0 and 3 or 1 or 4)

print(0 or false and 1)

二、可變、不變型別

1,可變型別 列表 字典

在值改變的情況下,id號不變,也就是說記憶體位址不變,證明就是在改變原來記憶體空間中的值,既原值可變

不可變型別

在值改變的情況下,id號也跟著變了,也就是說記憶體位址變了,證明不是在改原來記憶體空間中的值,而是申請了新的記憶體空間,及產生了新的值,既原值不可變。

例子:x=10.3

print(id(x))

x=11.4

print(id(x))

x=「abc」

print(id(x))

x=「abc」

print(id(x))

l1=[111,「aaa」] #列表改值不可變

print(id(l1))

l1[0]=222

print(id(l1))

dic=

print(id(dic))

dic[『k1』] = 「abc」

print(dic)

print(id(dic))

字典的value可以是任意型別,但是字典的key必須是不可變型別(字串型別)

dic=

print(dic[1111111])

下面寫法推薦使用列表替代

dic=

print(dic[0])

print(dic[1])

print(dic[-1])

了解:不可雜湊型別就是可變型別,可雜湊型別就是不可變型別

dic=

三、賦值運算子:(補充)

1,增量賦值

age=8

age += 1

print(age

2,鏈式賦值

x=10

y=xz=y

z=y=x=10

print(x,y,z)

print(id(x),id(y),id(z))

3、交叉賦值

m = 111

n = 222

temp=m

m=nn=temp

一條解決上門**

m, n = n,m

print(m,n)

4、解壓賦值

salaries = [1.1,2.2,3.3,4.4,5.5]

mon0 = salaries[0]

mon1 = salaries[1]

…mon0, mon1,… = salaries

print(mon0)

print(mon1)

變數名的個數必須與包含的值得個數相同,多乙個不行,少乙個也不行

mon0, mon1, mon2, *x = salaries

print(x)

*_, x , y, z = salaries

print(x)

print(y)

print(z)

x, *_, z = salaries

print(x)

print(z)

對於字典來說解壓賦值取出來的是字典的key

dic =

x, y = dic

print(x,y)

四、身份運算is與==

身份運算is與==

==判斷的是值是否相等

x=[『a』,『b』]

y=[『a』,『b』]

print(x == y)

is判斷的是id是否相等

print(id(x))

print(id(y))

print(x is y)

x=none

y=none

print(x == none)

print(x is y)

print((10 > 3) is true)

print((10 > 3) == true)

print(x is 10) 不要這麼用,能用是因為小整數池優化

五、if判斷

if判斷

判斷 條件1 並且 條件2:

做什麼事

否則:做什麼事

2,為何要有if判斷

為了控制計算機能夠像人一樣去完成判斷的過程

3、如何用if判斷

「」"print(『start…』)

if true and 10 > 8:…

print(「條件成立1」)

print(「條件成立2」)

print(「條件成立3」)

else:…

print(『end…』)

if判斷完整的語法

「」"if 條件1:

子**塊1

elif 條件2:

子**塊2

elif 條件3

子**塊3

…else:

子**塊

「」"2、只有if

inp_name=input('你的名字: ')

if inp_name == 「egon」:

print(『輸入正確』)

print('其他**')
3、if+elif

inp_name=input('你的名字: ')

if inp_name == 「egon」:

print(『您的身份是超級vip』)

elif inp_name == 「張三」:

print(『您的身份是鑽石vip』)

elif inp_name == 「李四」:

print(『您的身份是鉑金vip』)

print(其他**)

4、inp_name = input('你的使用者名稱: ')

inp_pwd = input('你的密碼: ')

if inp_name == 「egon」 and inp_pwd == 「123」:

print(『登入成功』)

else:

print(「剛剛輸入地使用者名稱或密碼錯誤」)

print('其他**')
5、if+elif+else

作業:inp_score = input('請輸入您的成績: ')

inp_score = int(inp_score) #整數端

if inp_score >= 90:

print(『優秀』)

elif inp_score >= 80 and inp_score < 90:

print(『良好』)

elif inp_score >= 70 and inp_score < 80:

print(「普通」)

else:

print(「很差」)

補充age >= 18 and age <= 20

print(20 >= age >=18)

print(18 <= age <= 28)

if判斷巢狀if

if 10>3:

if 1 == 1:

print(『ok1』)

print(『ok2』)

print(『ok3』)

print(『ok4』)

總結:今天一共學習了六項新知識:布林值、可變、不變型別、賦值運算子、身份運算is與==、if 判斷

布林值原本知道定義只有兩個值true和false,並且是通過比較得到的。今天通過學習新學到布林值分為:顯式布林值和隱式布林值

顯式布林值:是通過運算直接得到的布林值

隱式布林值:有 0、none、空而空又分空字串、空型別、空布林值

可變、不變型別:

可變型別:在原值變動的情況下,id號不變,也就是外面的殼子不變,內容可變

不變型別:

在值改變的情況下,id號也隨之改變了,就等於申請了新的記憶體空間,即原值不可變

賦值運算子:

在原來的基本運算子上面增加了:增量運算子、鏈式運算子、交叉運算子、解壓運算子

增量運算子:通過簡潔**例如age += 1就等於age = age + 1

鏈式運算子:乙個資料,多title共有

交叉運算子:用一條橫等式m , n= n , m進行資料交換

解壓運算子:例如眾多薪資中可以通過*_來解出需要的資料

身份運算is與==:

==判定的是值是否相同

is判定的是id是否相同,如果變數與none\true\false相同就用is

print(x is 10) 不要這麼用,能用是因為小整數池優化

if 判斷:判斷 條件1 並且 條件2:做什麼事 否則:做什麼事

「」"if 條件1:

子**塊1

elif 條件2:

子**塊2

elif 條件3

子**塊3

…else:

子**塊

「」"

Python之路 第一周

python基本資料型別 整型 int 浮點型 float 字串型別 str 整數 int python中整型資料型別只有一種,不管值的大小 位數可以說是任意的 如 0 1 55 99999999 int型別的資料可以進行常規的數值運算。浮點型 float python中浮點型資料型別也只有一種,不...

python第一周心得 Python第一周總結

變數 不能為系統自帶的內建函式,如def,help,sum等等 變數不能已下劃線數字來開頭,對大小寫敏感 變數後直接接數字,則被賦值為整型,如何加引號則賦值型別為字串str型別 a 1 整型 int b 2 字串 str 用print 直接輸出 a hello print a 在 使用者想要同時輸出...

python 一 第一周

print hello word 列印hello word name 字串 int 1boo trueusername input username 輸入 print username info info format username username print info username na...