Python基礎筆記_Day02_識別符號、變數、條件選擇語句
Day02_識別符號、變數、條件選擇語句
02.01_Python語言基礎(識別符號概述和組成規則)(掌握)
02.02_Python語言基礎(常見識別符號的命名規則)(掌握)
02.03_Python語言基礎(關鍵字概述和使用)(掌握)
02.04_Python語言基礎(控制檯輸出)(掌握)
02.05_Python語言基礎(人機互動--鍵盤輸入)(掌握)
02.06_Python語言基礎(常量)(掌握)
02.07_Python語言基礎(變數)(掌握)
02.08_Python語言基礎(python的資料型別)(掌握)
02.09_Python語言基礎(運算子)(掌握)
02.10_Python語言基礎(if條件語句的概述)(掌握)
02.11_Python語言基礎(if判斷語句的格式)(掌握)
02.12_Python語言基礎(if和邏輯運算子)(掌握)
02.13_Python語言基礎(elif)(掌握)
02.14_Python語言基礎(if語句的巢狀)(掌握)
02.15_Python語言基礎(if 語句的應用(猜拳遊戲))(掌握)
02.16_Python語言基礎(總結今天內容)
## 02.01_Python語言基礎(常量)(掌握)
* 常量定義:
* python中程式在執行的時候不會被更改的量稱為常量
* 例如:
* 數字7
* 字串"abc"
* PI = 3.1415926 圓周率,這個值不能進行修改
* 注意:
* 在定義常量的時候一般將常量的名字全部大寫
* 常量的特點:
* 一旦繫結,不能更改
* 例如:
* i = 10
* print(id(i))
* i = 11
* print(id(i))
## 02.02_Python語言基礎(變數)(掌握)
* 變數概述
* 在程式中需要對兩個數進行求和,該如何做?
* sum = 10+20
* print(sum)
* 如果在程式中,需要將兩個或則多個數據進行求和,此時先將資料儲存起來,在進行累加
* 在python中儲存資料,需要一個叫做變數的東西,
* num1 = 100 #num1 就是一個變數,
* num2 = 200 #num2 也是一個變數
* result = num1+num2
* print(result)
>總結:<br/>
* 變數:儲存資料<br/>
* 程式:處理資料
* 如果需要儲存多個數據,最簡單的方式就是設定多個變數
***
####
案例:定義變數
score = 100 #定義了一個變數,變數的名字叫score,它裡面儲存了一個值100
high = 180 #單位cm
applePrice = 3.5 #浮點數 蘋果的價格
weight = 7.5
money =applePrice * weight
#思考:變數能夠儲存什麼樣的資料,變數在記憶體中所佔的空間
## 02.03_Python語言基礎(python的資料型別)(掌握)
* 生活中的例子:
* 快遞箱子:
* 充電器箱子
* 膝上型電腦箱子
* 桌上型電腦電腦箱子
* 冰箱箱子
* 。。。
* python程式中,
* 為力更充分的利用記憶體空間以及更有效額管理記憶體,變數是有不同的資料型別:
* python3中6個標準的資料型別:
* 1.Number(數字)
* 2.String(字串)
* 3.list(列表)
* 4.Tuple(元祖)
* 5.Dictionary(字典)
* 6.Sets(集合)
* 還有一個特殊的資料型別:None(空值)
* 如何知道變數的型別?
* 在python中,只要定義了一個變數,而且他有資料,此時他的資料型別就已經確定
* 不需要開發者主動說明資料型別,系統會自動辨別
* 使用函式type(變數的名字),來查詢變數的型別
####type使用案例
age = 18
price = 3.5
name = "zhangsan"
print(type(age))
print(type(price))
print(type(name))
## 02.04_Python語言基礎(運算子)(掌握)
#### 算術運算子
下面的例子以a = 10 b = 20 為例進行計算
運算子 描述 例項
+ 加 :兩個物件相加 a + b 輸出的結果 30
- 減 :兩個物件進行相減 a - b 輸出的結果 -10
* 乘 :兩個物件進行相乘 a * b 輸出的結果 200
/ 除 :兩個物件進行相除 b / a 輸出的結果 2
// 取整:返回商的整數部分 9//2 輸出的結果 4 9.0//2.0 輸出的結果 4.0
% 取餘:返回除法的餘數 b % a 輸出的結果 0
** 冪 :返回x的y次冪 a ** b 10的20次方 輸出的結果
#### 賦值運算子
* 賦值運算子的基本格式:
* 變數 = 表示式
* 賦值運算子的基本功能:
* 計算了等號右側的表示式的值,賦值給等號左邊的變數,賦值結束後的變數
運算子 描述 例項
= 賦值運算子 把=號右邊的結果賦值給左邊的變數 num = 1+2*3
num3 = 10
num4 = num3 +10
#### 複合運算子
運算子 描述 例項
+= 加法賦值運算 c += a ===> c = c + a
-= 減法賦值運算 c -= a ===> c = c - a
*= 乘法賦值運算 c*= a ===> c = c * a
/= 除法賦值運算 c /= a ===> c = c / a
%= 取餘法賦值運算 c %= a ===> c = c % a
**= 冪法賦值運算 c **= a ===> c = c ** a
//= 取整法賦值運算 c //= a ===> c = c // a
# 複合運算子案例
e = 10
f = 20
f += e #f = f + e ==30
print(f)
#### 比較運算子
運算子 描述
== 檢查兩個運算元是否相等,如果是條件為真(True),反之為否(Flase)
!= 檢查兩個運算元是否相等,如果是值不相等(True),反之False
> 檢查左運算元的值是否大於右運算元的值,如果是返回True,反之False
< 檢查左運算元的值是否小於於右運算元的值,如果是返回True,反之False
>= 檢查左運算元的值是否大於等於右運算元的值,如果是返回True,反之False
<= 查左運算元的值是否小於等於右運算元的值,如果是返回True,反之False
# 比較運算子案例程式碼
print(a == b)
a = 20
print(a == b)
a = 10
print(a != b )
print(a > b)
print(a < b)
a = 20
print(a >= b)
print(a <= b)
#### 邏輯運算子
運算子 邏輯表示式 描述 示例
and x and y 布林“與” 如果x為false,x and y 返回false,否則返回y的計算值
or x or y 布林“或” 如果x為True ,返回True 反之返回y的計算值
not not x 布林“非” 如果x為True,返回的False,如果False返回的True
# 邏輯運算子示例
a = False
b = 20
print(a and b)
a = 1
b = 3
c = a >b
print(c and b)
print(a or b)
print(not (a and b))
#### 位運算子
* 概述:
* 按照位運算子把數字轉換為二進位制來計算
#### 位運算子案例:
下表中的變數 a為60 b 為13
a = 60
b = 13
128 64 32 16 8 4 2 1
60 --> 0011 1100
13 --> 0000 1101
運算子 描述 示例
& 按位與運算子:參與運算的兩個值,如果兩個相應位都是1,則該位的結果為1,否則為0
a = 60 0011 1100
b = 13 0000 1101
------------------------
0000 1100 12
| 按位或運算子:只要對應的兩個二進位制位有一個為1,結果就為1,反之為0
a = 60 0011 1100
b = 13 0000 1101
------------------------
0011 1101 61
^ 按位異或運算子:當兩個二進位制位相異時,結果為1,反之為0
a = 60 0011 1100
b = 13 0000 1101
------------------------
0011 0001 49
~ 按位取反運算子:對資料的每一個二進位制位進行取反,即把1變為0,0變為1 ~x類似-x-1
a = 60 0011 1100
b = 13 0000 1101
------------------------
<< 左移運算子:運算數的每一個二進位制位全部向左移若干位,由<<右邊的數字指定了移動的位數,高位丟棄,低位補0
a = 60 0011 1100
a << 2
1111 0000----> 240
b << 3
b = 13 0000 1101
0110 1000---->104
>> 右移運算子:把>>左邊的運算數的各個二進位制位全部右移若干位,由>>右邊數字控制移動的位數
a = 60 0011 1100
a >> 2
0000 1111--->15
a = 60
b =13
print(a & b)
print(a | b)
print(a ^ b)
print(~a)
print(~b)
print(a << 2)
print(b << 3)
## 02.05_Python語言基礎(if條件語句的概述)(掌握)
* 生活中場景:
* 例如火車站/地鐵 需要安檢 如果沒有攜帶違禁物品則放行,反之....
* 開發中的場景:
* 密碼的判斷
#### 例如:重要日期的判斷----51
if 今天是週一:
入學第一天
if 今天是情人節:
買玫瑰
if 今天發工資:
先還信用卡
if 有剩餘:
可以happy....
else:
吃土....喝風
>總結:<br/>
如果某些條件滿足,才能做某些事情,<br/>
當不滿足時不允許做-----》判斷
***
## 02.06_Python語言基礎(if判斷語句的格式)(掌握)
* if語句的基本格式
* if 條件:
* 要做的事情
#### if基本格式案例
age = 24
print("----if判斷開始------")
if age >= 25:
print("可以領證了....哈哈")
print("----if判斷結束後----")
>練習:<br/>
要求,從鍵盤獲取自己的年齡,判斷是否大於等於18,如果條件成立“XXXX”
>思考:<br/>
判斷age大於或則等於18進入if語句體,如果條件不成立?
else
#### if...else
格式:
if 條件:
滿足條件,做事情1
滿足條件,做事情2
滿足條件,做事情3
....
else:
不滿足條件,做事情1
不滿足條件,做事情2
不滿足條件,做事情3
# 案例,進火車站,
# 定義一個變數ticket
# 1:表示有票,0表示沒票
ticket = 1
if ticket == 1:
print("有車票,可以上火車")
print("終於可以見到ta,happy....")
else:
print("沒有車票...不能上車")
print("下次再來....")
>練習:<br/>
01.從鍵盤輸入刀子的長度,如果刀子長度沒有超過10cm,允許上火車,反之不允許<br/>
02.在控制檯輸入一個4位數年份,判斷它是否是閏年
## 02.07_Python語言基礎(if和邏輯運算子)(掌握)
#### if和邏輯運算子
# if和or案例:
youself = input("你去嗎?")
your_girlfriend = input("你去嗎?")
if youself == "去" or your_girlfriend == "去":
print("看大片")
# if和and案例:
youself = input("你去嗎?")
your_girlfriend = input("你去嗎?")
if you == "去" and yourwife == "去":
print("去領證")
# 案例3:if邏輯運算子 - --白富美
color = input("你白嗎?")
money = input("你富嗎?")
money = int(money)
beautiful = input("你美嗎?")
if color == "白" and money > 10000000 and beautiful == "美":
print("白富美")
else:
print("。。。。。")
# if邏輯運算子not案例
a = 30
if not ((a > 0) and (a <= 50)):
print("ok")
## 02.08_Python語言基礎(elif)(掌握)
* if 能夠完成當XXX條件成立,做事情
* if...else 能完成當XXX條件成立,做事情1,條件不成立執行事情2
* 如果有這樣一種情況當XXX1滿足時做事情1,當條件2滿足,做事情2,....
* 該如何實現----elif
####格式:
elif 的使用格式:
if 條件1:
事情1
elif 條件2:
事情2
elif 條件3:
事情3
.....
>說明:<br/>
當條件1滿足時,執行事情1,然後整個if語句結束<br/>
當條件1不滿足,那麼需要判斷條件2,如果條件2滿足,執行事情2,然後整個if語句結束<br/>
當條件1和2都不滿足,如果條件3滿足,執行事情3,然後整個if語句結束<br/>
#### if...elif案例:
#if...elif案例
#根據考試的成績,判斷學生的等級
#通過鍵盤錄入的方式獲取學生的成績(Number型別中的int)
score = int(input("請輸入學生的成績:"))
if score >=90 and score <= 100:
print("A")
elif score >= 80 and score <90:
print("B")
elif score >= 70 and score <80:
print("C")
elif score >= 60 and score <70:
print("D")
#if...elif案例:
sex = input("請輸入你的性別:")
if sex == "男":
print("你是男性.....")
elif sex == "女":
print("可以穿裙子")
else:
print("你是第三種,你像幹啥....")
elif的注意點:
可以和else一起使用
if 性別為男性:
輸出男性的特徵
elif 性別為女性:
輸出女性的特徵
else:
第三種性別特徵
>說明:<br/>
當性別為男性,條件成立,執行輸出男性的特徵<br/>
如果當性別為男性,條件不成立,往下走elif,如果性別為女性,執行輸出女性的特徵,<br/>
當以上所有的條件都不成立,走else,執行else的程式碼<br/>
>注意:<br/>
elif必須和if一起使用,否則出錯
##### 練習:
01.根據使用者的輸入,判斷是星期幾,使用者輸入的數值範圍為1~7(正整數)
02.根據收到壓歲錢的數目決定如何花費
若壓歲錢的數目大於等於1000就捐助失學兒童
如果小於1000但大於等於500則購買航模
如果在500以下就購買百科全書
03.對學員的結業考試成績評測
成績>=90為優秀、成績>=80為良好 、成績>=60為中等、成績<60為差
## 02.09_Python語言基礎(if語句的巢狀)(掌握)
#### if語句巢狀的格式
if 條件1:
滿足條件1,做事情1
滿足條件1,做事情2
滿足條件1,做事情3
.....(省略)
if 條件2:
滿足條件2,做事情1
滿足條件2,做事情2
滿足條件2,做事情3
說明:外層的if判斷,if...else
內層 if...else
#### if巢狀案例:火車安檢
ticket = 1 # 1表示有車票 0:沒有車票
knifeLength = 9 #cm
#判斷是否有車票
if ticket == 1:
print("通過了車票的檢查,可以進站...")
if knifeLength <= 10:
print("通過安檢....")
else:
print("安檢沒通過,等待處理....")
else:
print("沒車票")
輸出結果:
結果:1.
ticket = 1
knifeLength = 9
通過了車票的檢查,可以進站...
通過安檢....
結果:2
ticket = 1
knifeLength = 20
>練習:<br/>
模擬超市購物流程,鍵盤錄入消費金額和是否是會員,根據錄入資訊提示是否可以換購
## 02.10_Python語言基礎(if 語句的應用(猜拳遊戲))(掌握)
#### 猜拳遊戲
石頭 剪刀 布
要求:
電腦隨機生成一個0~2之間的正整數0,1,2,
剪刀(0),石頭(1),布(2)
,要求使用者通過鍵盤錄入的方式駛入0~2之間的正整數,產生結果
生成隨機數需要匯入一個包 random -->import random
生成一個0~2 randint(0,2)
import random
player = input("請輸入0~2:剪刀(0) 石頭(1) 布(2)")
computer = random.randint(0,2)
print(computer)
#判斷贏了
if ((player == 0) and (computer == 2)) or ((player == 1) and (computer == 0)) or ((player == 2) and (computer == 1)):
print("贏了")
elif player == computer:
print("平局")
else:
print("輸了")
## 02.11_Python語言基礎(總結今天內容)
* 把今天的知識點總結一遍。