Python運算子、條件結構、迴圈結構
阿新 • • 發佈:2021-01-11
技術標籤:python
Python運算子、條件結構、迴圈結構
運算子
算術運算子、邏輯運算子、比較運算子、三元運算子(條件運算子)、賦值運算子
位運算子
算術運算子
- / % ** //
小數的+ - * /存在精度丟失問題
:兩個數值相加,求加法;兩個字串相加,就是拼接功能
print(3+1)
print("a"+"b")
Decimal需要匯入模組
from decimal import Decimal
a = Decimal("2.3") b = Decimal("1.9") c = Decimal("4.2")
精度丟失問題
print( (a+b) == c)
特殊
int型別和bool型別之間自動轉換 True 1 False 0
print(int(False))
print(True - False)
*
print("hello"*2)
** 幾次冪
print(3 ** 3)
print(25 ** 0.5)
/
print(3 / 2)
// 求整
print(3 // 2)
%餘數
print(10 % 3)
優先順序問題
()高於**高於 * / // %高於 + -
print(2 ** 2 * 3)
print(3 * 2 ** 2)
賦值運算子
相比java 多了** //
a = 2
a += 2
a -= 2
a *= 2
a **= 2
a /= 2
a //= 2
a %= 2
print(a)
同時給多個變數進行賦多個值
name, age, gender = "紅紅", 99, "女"
print(name, age, gender)
同時給多個變數賦同一個值
num1 = num2 = num3 = 22
print(num1, num2, num3)
比較運算子
True False
print(3 > 2) print(3 > True) print(ord(",")) print("," > "b") print("1" < "2") print("11" < "2") print("abc" < "aba")
邏輯運算子
Java: & | ! &&(短路與)
Python: and(與) (or)或 not(非)
特殊用法
兩個整數之間也可以用邏輯運算子:
and 只要有一個值為0,則結果為0,否則結果為最後一個非0的數字
or 只有所有的值為0結果才為0,否則結果為第一個非0數字
print(3 and 5)
print(0 or 0)
位運算子
將左右兩邊的數字轉成二進位制
&:按位與 都為1才為1
|:按位或 一個為1就為1
^:按位異或 不一樣就為1
print(3 ^ 2)
三元運算子
java格式:條件?結果1 :結果2
Python:結果1 if 條件 else 結果2
a = 3
b = 2
print("a大") if a < b else print("b大")
條件運算子
if elif else
if a > b:
print("a大")
else:
print("b大")
age = int(input("請輸入您的年齡:"))
if age < 3:
print("小屁娃")
# elif (age >= 3) and (age < 18):
elif 3 <= age < 18:
print("少年")
elif age >= 18:
print("不是小屁孩拉")
迴圈語句
while for
終止迴圈:break continue
while 和 for迴圈都可以結合else使用
i = 1
while i <= 10:
if i == 5:
# i = i + 1
break
print(f"i={i}")
i = i + 1
else:
print("完了")
for i in range(10):
print(i)
else:
print("Over")
Python運算子、條件結構、迴圈結構到此結束,88