Python全棧-Day04
阿新 • • 發佈:2018-03-04
col 位運算符 等於 操作數 成員 play clas hid com
01-知識回顧、算術運算符
- 什麽是變量
- 變量的命名規則
02-知識回顧、賦值運算符
- 算數運算符 + 、-、 *、 /、 //、%、**
1 a = 5 2 b = 3 3 print(a+b) 4 print(a-b) 5 print(a*b) 6 print(a/b) 7 print(a//b) 8 print(a%b) 9 print(a**b) a+b=8 a-b=2 a*b=15 a/b=1.6666666666666667 a//b=1 a%b=2 a**b=125
- 賦值運算符: = 、+=、 -=、 *=、 /=、 %=、 //=、 **=
1number = 1 #等價於 將數字1賦值給number變量 2 number += 2 #等價於number = number + 1 3 number -= 2 #等價於number = number - 1 4 number *= 2 #等價於number = number * 1 5 number /= 2 #等價於number = number / 1 6 number //= 2 #等價於number = number // 1 7 number %= 2 #等價於number = number % 1 8 number **= 2 #等價於number = number ** 1
- 比較運算符 : > 、<、 =、 >=、 <=、 !=、 == (返回值為True 或False)
1 a = 5 2 b = 3 3 print(a>b)#True 4 print(a<b)#False 5 print(a>=b)#True 6 print(a<=b)#False 7 print(a==b)#False 8 print(a!=b)#True
- 邏輯運算符 and 、or、not (用來做邏輯運算,返回值同比較運算符,為True、False)
1 #邏輯運算符 2 a = 5 3 b = 3 4 c = 1 5 print(a > b and a < c)#Flase 6 print(a > b or a < c)#True7 print(not c > a)#True 8 print(not b > c)#False 9 print(not a > b)#False
以上為“真值表”
- 成員運算符 in、not in (用來判斷一個元素是否是另一個元素的成員,返回值為:True或False)
1 #成員運算符 2 name = "cuixiaozhao" 3 print("cui" in name)#True 4 print("CUI" in name)#False 5 print("CUI" not in name)#True 6 print("cui" not in name)#False
- 身份運算符 is、not is (用來判斷身份,返回值為:True或False)
1 #身份運算符 2 name = "cuixiaozhao" 3 alias = name 4 NAME = "cuixiaozhao" 5 print(alias is name)#True 6 print(alias is not name)#False 7 print(NAME is name)#True 8 print(NAME is not name)#False
- 表達式
1+2*3 就是一個表達式,這裏的加號和乘號叫做運算符,1、2、3叫做操作數。1+2*3 經過計算後得到的結果是7,就1+2*3 = 7。我們可以將計算結果保存在一個變量裏,a = 1-2*3 。 所以表達式就是由操作數和運算符組成的一句代碼或語句,表達式可以求值,可以放在“=”的右邊,用來給變量賦值。
運算符 | 描述 |
---|---|
** | 指數 (最高優先級) |
~ + - | 按位翻轉, 一元加號和減號 (最後兩個的方法名為 +@ 和 -@) |
* / % // | 乘,除,取模和取整除 |
+ - | 加法減法 |
>> << | 右移,左移運算符 |
& | 位 ‘AND‘ |
^ | | 位運算符 |
<= < > >= | 比較運算符 |
<> == != | 等於運算符 |
= %= /= //= -= += *= **= | 賦值運算符 |
is is not | 身份運算符 |
in not in | 成員運算符 |
not or and | 邏輯運算符 |
運算符那麽多,優先級記不住怎麽辦? 使用小括號。通過使用小括號,我們就可以很方便的進行優先級的區分。
03-題目判斷3個數字中的最大值
常規思路
if num1>num2>num3 #num1最大
elif num1>num3>num2 #num1最大
elif num2>num1>num3 #num2最大
elif num2>num3>num1 #num2最大
elif num3>num2>num1 #num3最大
else
num3>num1>num2 #num3最大
04-題目判斷最大值講解
1 num1 = int(input("Please input the 1 number:")) 2 num2 = int(input("Please input the 2 number:")) 3 num3 = int(input("Please input the 3 number:")) 4 maxNumber = 0#定義最大的數字並賦值0 5 if num1 > num2 : 6 maxNumber = num1 7 if maxNumber > num3: 8 print("The biggest number is 1st number:",maxNumber) 9 else: 10 print("The biggest number is 3th number:",num3) 11 else: 12 maxNumber = num2 13 if maxNumber > num3: 14 print("The biggest number is 2th:",maxNumber) 15 else: 16 print("The biggest number is 3th:",num3)View Code
05-邏輯運算符、表達式
見01-知識回顧、算數運算符中的綜合講解
06-短路原則
運算符中的優先級,使用小括號提升
條件1 and 條件2
條件1 or 條件2
短路原則
- 對於and 如果前面的第一個條件為假,那麽這個and前後兩個條件組成的表達式 的計算結果就一定為假,第二個條件就不會被計算
- 對於or如果前面的第一個條件為真,那麽這個or前後兩個條件組成的表達式 的計算結果就一定為真,第二個條件就不會被計算
07-while循環01
- while循環
1 while 條件: 2 print("結果")
#Req:打印1~100之間的數字
number = 1
while number <= 100:
print(number)
number += 1
- break語句
1 #打印1~100之間的數字,如果大於或等於66時候,中斷打印 2 number = 0 3 while number <= 100: 4 print(number) 5 if number >= 66: 6 break 7 number += 1
- continue語句
1 #Req:打印1~100之間的數字,但不包含數字91 2 number = 0 3 while number <= 99: 4 number += 1 5 if number == 91: 6 continue 7 print(number)
- while循環中的else講解
如果不存在break語句,便執行while中的else語句
- print()換行講解 # print()等價於print(end="\n")
- while循環的嵌套
1 line = 0 2 while line <5: 3 #print("*") 4 width = line#此處很重要,將行數line賦值給寬度width,此時顯示結果為:等腰直角三角形 5 while width >=0: 6 print("*",end="") 7 width -=1 8 print() 9 line +=1
08-while循環02
1 Req:打印1~10 2 #方法01 3 print(1) 4 print(2) 5 print(4) 6 print(5) 7 print(6) 8 print(7) 9 print(8) 10 print(9) 11 print(10) 12 #方法02 13 num = 1#定義一個變量 14 while num <= 10: 15 print(num) 16 num += 1 17 #打印1~100之間的數字 18 num = 1 19 while num <= 100: 20 print(num) 21 num += 1 22 #打印1~100之間的所有偶數 23 even_num = 2#定義一個變量even_number(偶數) 24 while even_num <= 100: 25 print(even_num) 26 even_num += 2 27 #打印1~100之間的所有偶數 28 even_number = 1 29 while even_number <=100: 30 if even_number %2 == 0: 31 print(even_number) 32 even_number += 1 33 #猜年齡代碼 34 #Req:定義一個年齡,用戶輸入年齡,給出判斷結果 35 age = 75 36 userInputAge = int(input("Please input your guess age:")) 37 if userInputAge == age: 38 print("Congratulations to you ,you got it!") 39 elif userInputAge > age: 40 print("Sorry,your guess is bigger than the true age") 41 else: 42 print("Sorry,your guess is smaller than the true age") 43 print("End of it!") 44 #猜年齡代碼 45 #Req:定義一個年齡,用戶輸入年齡,給出判斷結果,循環輸入, 46 age = 75 47 flag = True#此處定義一個標誌 48 while flag: 49 userInputAge = int(input("Please input your guess age:")) 50 if userInputAge == age: 51 print("Congratulations to you ,you got it!") 52 flag =False 53 elif userInputAge > age: 54 print("Sorry,your guess is bigger than the true age") 55 else: 56 print("Sorry,your guess is smaller than the true age") 57 print("End of it!")View Code
09-while循環03
- 打印指定寬度和高度的矩形
1 input_width = int(input("Please input width:")) 2 input_height = int(input("Please input height:")) 3 height = 1 4 while height <= input_height: 5 # print("#", end="") 6 width = 1 7 while width <= input_width: 8 print("*", end="") 9 width += 1 10 print() # print()等價於print(end="\n") 11 height += 1
- 打印9*9乘法表
1 height = 1#定義一個縱向變量height 2 while height <= 9: 3 number = 1 4 while number <= height: 5 #print(number,"*",height,"=",height*number,end=" ")#此處用到了字符串的拼接 6 print(str(number)+"*"+str(height)+"="+str(height*number),end="\t") 7 number += 1 8 print()#等價於print(end="\n") 9 height += 1
10-本節內容總結
- 算術運算符(註意,不是算數運算符哦!)
- 比較運算符
- 邏輯運算符
- 表達式和運算符
- 運算符的優先級(加上小括號及短路原則)
- while循環——while循環的嵌套 、break語句、continue語句、while循環中的else
- 實例練習:猜年齡遊戲、打印1~100之間的數字(奇數、偶數)、打印指定長款的矩形
Python全棧-Day04