日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學無先后,達者為師

網站首頁 編程語言 正文

python運算符+條件結構+循環結構_python

作者:小寶的寶呢 ? 更新時間: 2022-05-04 編程語言

一,算術運算符

?+ - * /

print(1+2) ? ? ? ?相加
print("1"+"2") ? ? ? ?拼接
print("1"+2) ? ? ? ?報錯,數據類型不同
# /求除數 ?//求整數 ? ?%取模 ? **冪
print(3/2) ? ? ? ?輸出1.5
print(3//2) ? ? ? ?輸出1
print(3%2) ? ? ? ?輸出1
print(3**2) ? ? ? ?輸出9

Python中float進行算術運算時,精度丟失問題:

使用Python中的Decimal模塊解決

?①.導入Decimal模塊

? ? ? ? from decimal import Decimal

②.使用

? ? ? ? 變量 = Decimal("float值")

請注意:float類型的值:必須用雙引號包裹

注意:算術運算符的優先級
? ? ()高于**高于 * / // %高于 + -

數據庫中針對錢,使用Decimal,導入方式如下:

# 單精度(32位)floot
# 雙精度(64位)double
# 計算機的底層都是二進制(小數不能完美轉成二進制)
# 數據庫中如果針對錢 ?Decimal(10,2) ?decimal是字符串小數
print(0.2-0.1)
print(0.6-0.4)

print(Decimal(0.6) - Decimal(0.4))
print(Decimal("0.6") - Decimal("0.4"))

控制臺輸出:

0.1
0.19999999999999996
0.1999999999999999555910790150

二,賦值運算符

多個變量賦值,格式: 變量1,變量2,變量3 = 值1,值2,值3

a,b,c=1,2,3

多個變量賦相同值,格式:變量1=變量2=變量3=值

a=b=c=1

三,比較運算符

> ? ? ? ?< ? ? ? ?>= ? ? ? ?<= ? ? ? ?!= ? ? ? ?<>

有a+=1,a/=2,a*=2,a-=2,但是沒有a++

注意:比較運算符的特殊情況

四,邏輯運算符

java中的邏輯運算符 : &&并且 ? ? ? ?//或者

python中的邏輯運算符: and并且 ? ? ? ?or或者
? ? ①and運算符
? ? ? ? 只要有一個值為0,則結果為0,否則結果為最后一個非0的數字
? ? ②or運算符
? ? ? ? 只有所有的值為0結果才為0,否則結果為第一個非0數字

print(True and False)
# 先并且,再或者
print(True and False or True)
# 在python中 0為false,其他數字為true
print(1 and 2)
print(1 and 2 and 0 and 1)
print(1 or 2 or 0 or 1)

控制臺輸出:

False
True
2
0
1

五,位運算符

<< 二進制位數往左邊移動

# 6 ?110
# print(6<<2)即11000即24
print(6<<2)

>> 二進制位數往右邊移動

# print(6>>2)即1即1
print(6>>2)

& 按位與:位數都為1,則為1,否則為0

# 6 ?110
# 3 ?011
# 010控制臺輸出2
print(3&6)

?| 按位或:位數有1,則為1,否則為0

# 6 ?110
# 3 ?011
# 111控制臺輸出7
print(3|6)

^ 按位異或:位數相同為0,不同為1

# 6 ?110
# 3 ?011
# 101控制臺輸出5
print(3^6)
# 2,4,8,16,32....
# 10,100,10000,10000,100000...
# 1,11,111,1111,11111....
print(4&(4-1)) ? ? ? ?輸出0
print(8&(8-1)) ? ? ? ?輸出0
print(9&(9-1)) ? ? ? ?輸出8

二進制:0,1

八進制:0-7

十進制:0-9

十六進制:0-9 ?a-f

六,條件運算符

# 條件后移
a=1
b=2
print(a if a>b ?else b) ? ? ? 

?輸出2

七,隨機數

  • ①.導入random模塊,import random
  • ②.使用random模塊中隨機數功能,random.randint(開始,結束),注意:包含開始位置和結束位置

石頭剪刀布游戲:

ls=["1,? ","2,??"," 3,???"]
u=int(input("請輸入[1,? 2,?? 3,???]"))
c=random.randint(1,3)

win=1 if c+1==4 else c+1
print(f"電腦出了{ls[c-1]},玩家出了{ls[u-1]}")
if u==win:
? ? print("你贏了")
elif u==2:
? ? print("平局")
else:
? ? print("你輸了")

控制臺:

請輸入[1,? 2,?? 3,???]1 ? ? ? ? ? ? ? ?---------手動輸入
電腦出了 3,???,玩家出了1,??
你贏了

進程已結束,退出代碼為 0

八,條件結構?

1,if語句

語法格式,if ?條件:
? ? ? ? ? ? ? ? ? ? ? ? ? ? 代碼塊

注意:縮進關系【4個空格或一個Tab制表符】

2,if-else語句

語法格式,if 條件:
? ? ? ? ? ? ? ? ? ? ? ? ? ? ?代碼塊
? ? ? ? ? ? ? ? ? else:
? ? ? ? ? ? ? ? ? ? ? ? ? ? 代碼塊

3,if-elif-else語句

語法格式,if 條件1:
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?代碼塊
? ? ? ? ? ? ? ? ?elif 條件2:
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 代碼塊
? ? ? ? ? ? ? ? ?else:
? ? ? ? ? ? ? ? ? ? ? ? ? ? ?代碼塊

4,if嵌套

語法格式,if 條件:
? ? ? ? ? ? ? ? ? ? ? ? ? ? ?代碼塊
? ? ? ? ? ? ? ? ? if 條件:
? ? ? ? ? ? ? ? ? ? ? ? ? ? ?代碼塊
? ? ? ? ? ? ? ? ? else:
? ? ? ? ? ? ? ? ? ? ? ? ? ? 代碼塊

九,循環結構

1,while循環

語法,while ?條件:
? ? ? ? ? ? ? ? ? ? ? ? ?代碼塊

# 使用while輸出1~100的數字
a=1
while a<=100:
? ? print(a)
? ? a+=1

2,循環終止

break : 終止循環

continue :退出當前一次循環,繼續執行下次循環

# if,while,for都有else
for i in ls:
? ? print(i)
? ? if i>5:
? ? ? ? break
else:#只要上面的代碼沒有break就執行
? ? print("yes")

3,for循環

語法,for 臨時變量 in 列表:
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 代碼塊

ls=[1,2,3,4,5,6,7,8]
sum=0
for i in ls:
? ? print(i)
? ? sum+=i
print(sum/len(ls))
print(sum/len(ls))
# range(3) [0,1,2]
for i in range(3):
? ? print(i)

# 200~300
for i in range(101):
? ? print(i+200)

4,循環結合else使用

①while...else

語法,while ?條件:
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 代碼塊
? ? ? ? ? ?else:
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 代碼塊

②for...else

語法,for 臨時變量 in 列表:
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 代碼塊
? ? ? ? ? ?else:
? ? ? ? ? ? ? ? ? ?代碼塊

# if,while,for都有else
for i in ls:
? ? print(i)
? ? if i>5:
? ? ? ? break
else:#只要上面的代碼沒有break就執行
? ? print("yes")

原文鏈接:https://blog.csdn.net/weixin_53436351/article/details/123263592

欄目分類
最近更新