欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python全棧之運(yùn)算符詳解

 更新時(shí)間:2021年12月01日 14:17:52   作者:熬夜泡枸杞  
這篇文章主要為大家介紹了Python運(yùn)算符,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來(lái)幫助

1. 算數(shù)_比較_賦值_成員

1.1 算數(shù)運(yùn)算符

算數(shù)運(yùn)算符: + - * / // % **

# +
var1 = 7
var2 = 90
res = var1 + var2
print(res)
# -
var1 = 7
var2 = 90
res = var1 - var2
print(res)
# *
var1 = 7
var2 = 10
res = var1 * var2
print(res)
# / 結(jié)果永遠(yuǎn)為小數(shù)
var1 = 10
var2 = 5
res = var1 / var2
print(res , type(res))
# // 地板除
"""被除數(shù) ? 除數(shù) = 商"""
"""注意點(diǎn):如果被除數(shù)或者除數(shù)是小數(shù),那么得到正常結(jié)果之后,數(shù)值后面帶上.0變成小數(shù)"""
var1 = 10.0
var2 = 3.0
# var2 = 3.0
res = var1 // var2
print(res)

# %  取余
var1 = 7
var2 = 4
res = var1 % var2
res = -7 % 4  # -3 + 4 = 1
res = 7 % -4  # 3 + (-4) = -1
res = -7 % -4 # -3 (被除數(shù)和除數(shù)都是負(fù)的,正常結(jié)果加負(fù)號(hào))
res = 81 % 7   # 4
res = 81 % -7  # -3
res = -81 % 7  # 3
res = -81 % -7 # -4
print(res)
# ** 冪運(yùn)算
res = 2 ** 3
print(res)

1.2 比較運(yùn)算符

比較運(yùn)算符: > < >= <= == !=

"""比較運(yùn)算符的結(jié)果要么是True , 要么是False 只有兩個(gè)值"""
res = 10 > 5
res = 10 >= 10
# ==這個(gè)符號(hào)是在做比較,比較==兩邊的數(shù)值是否一樣
res = 5 == 9
res = 5 != 9 
print(res)

1.3 賦值運(yùn)算符

賦值運(yùn)算符: = += -= *= /= //= %= **=

# = 賦值運(yùn)算符 將右側(cè)的值賦值給左側(cè)變量
a = 5 <= 3
print(a)

var1 = 10
var2 = 5
# += 
"""var1 = var1 + var2"""
# var1 += var2
# print(var1)
# -=
"""var1 = var1 - var2"""
# var1 -= var2
# print(var1)
# %=
"""var1 = var1 % var2"""
var1 %= var2
print(var1)

1.4 成員運(yùn)算符

成員運(yùn)算符: in not in (針對(duì)于容器型數(shù)據(jù))

"""字符串判斷時(shí),必須是連續(xù)的片段"""
strvar = "今天天氣要下雨,趕緊回家收衣服"
res = "今" in strvar
res = "天氣" in strvar
res = "趕回" in strvar
print(res)
# 針對(duì)于列表,元組,集合
container = ["趙沈陽(yáng)","趙萬(wàn)里","趙世超"]
container = ("趙沈陽(yáng)","趙萬(wàn)里","趙世超")
container = {"趙沈陽(yáng)","趙萬(wàn)里","趙世超"}
# res = "趙沈陽(yáng)" in container
# res = "趙萬(wàn)里" not in container
res = "趙世超1223232" not in container
print(res)
# 針對(duì)于字典 (判斷的是字典的鍵,不是值)
container = {"zsy":"趙沈陽(yáng)","zwl":"趙萬(wàn)里","zsc":"趙世超"}
res = "趙沈陽(yáng)" in container # False
res = "zsy" in container
print(res)

2. 身份運(yùn)算符

身份運(yùn)算符 is 和 is not (檢測(cè)兩個(gè)數(shù)據(jù)在內(nèi)存當(dāng)中是否是同一個(gè)值)

# 整型 -5~正無(wú)窮 
var1 = 100
var2 = 100
print(var1 is var2)
# 浮點(diǎn)型 非負(fù)數(shù)
var1 = -9.1
var2 = -9.1
print(var1 is var2)
# bool 相同即可
var1 = True
var2 = True
print(var1 is var2)
# complex 在實(shí)數(shù)+虛數(shù)不相同 (只有虛數(shù)的情況下例外)
var1 = 6-8j
var2 = 6-8j
var1 = -10j
var2 = -10j
print(var1 is var2)
# 容器: 相同字符串 , 空元組相同即可  剩下的所有容器都不相同
container1 = ()
container2 = ()
print(container1 is not container2)
container1 = "你"
container2 = "你"
print(container1 is not container2)
container1 = [1,23,3]
container2 = [1,23,3]
print(container1 is not container2)

小提示:

# var1和var2地址id是一樣的
var1 = 10j 
var2 = 10j
# var1和var2地址id是不一樣的
var1 = -10j 
var2 = -10j

3. 邏輯運(yùn)算符

邏輯運(yùn)算符: and or not

# and 邏輯與   
"""全真則真,一假則假"""
res = True and True    # True
res = True and False   # False
res = False and True   # False
res = False and False  # False
print(res)
# or  邏輯或  
"""一真則真,全假則假"""
res = True or True    # True
res = False or True   # True
res = True or False   # True 
res = False or False  # False
print(res)
# not 邏輯非  
res = not True
res = not False
print(res)
# 邏輯短路
"""
無(wú)論后面的表達(dá)式是True 還是False 都已經(jīng)無(wú)法改變最后的結(jié)果,那么直接短路,后面的代碼不執(zhí)行;
(1) True or print("程序執(zhí)行了 ~ 1111")
(2) False and print("程序執(zhí)行了 ~ 2222")
True or print("程序執(zhí)行了 ~ 1111")
True or True => True
True or False => True
False and print("程序執(zhí)行了 ~ 2222")
False and True  => False
False and False => False
"""
"""
計(jì)算規(guī)律:
	先腦補(bǔ)計(jì)算當(dāng)前表達(dá)式的布爾值是True還是False
	如果出現(xiàn)了 True or 表達(dá)式  或者 False and 表達(dá)式的情況,直接返回前者,后面代碼不執(zhí)行
	如果沒有出現(xiàn)短路效果,直接返回后者
"""
res = 5 and 6 # 6
"""
True and True =>True
True and False => False
"""
res = 5 or 6  # 5
res = 0 and 999
res = 0 or "abc"
print(res)
# 邏輯運(yùn)算符的優(yōu)先級(jí)
""" 優(yōu)先級(jí)從高到低: () > not > and > or   """
res = 5 or 6 and 7 # 5 or 7 => 5
res = (5 or 6) and 7 # 5 and 7
res = not (5 or 6) and 7 # not 5 and 7 => False and 7 => False
res = 1<2 or 3>4 and 5<100 or 100<200 and not (700>800 or 1<-1)
"""
not (False or False) => True
res = 1<2 or 3>4 and 5<100 or 100<200 and not (700>800 or 1<-1)
res = True or False and True or True and True
res = True or False or True
res = True or True => True
"""
print(res)

3.1 位運(yùn)算符

位運(yùn)算符: & | ^ << >> ~

var1 = 19
var2 = 15
# & 按位與
res = var1 & var2
"""
000 ... 10011
000 ... 01111
000 ... 00011 => 3
"""
print(res)
# | 按位或
res = var1 | var2
"""
000 ... 10011
000 ... 01111
000 ... 11111
"""
print(res)
# ^ 按位異或
"""兩個(gè)值不相同=>True 反之返回False"""
res = var1 ^ var2
"""
000 ... 10011
000 ... 01111
000 ... 11100
"""
print(res)
# << 左移 (相當(dāng)于乘法)
"""5乘以2的n次冪"""
res = 5 << 1 # 10
res = 5 << 2 # 20
res = 5 << 3 # 40
print(res)
"""
000 ... 101  => 5
000 .. 1010  => 10
000 ..10100  => 20
000 .101000  => 40
"""
# >> 右移 (相當(dāng)于除法)
"""5地板除2的n次冪"""
res = 5 >> 1 # 2
res = 5 >> 2 # 1
res = 5 >> 3 # 0
"""
000 ... 101
000 ... 010 => 2
000 ... 001 => 1
000 ... 000 => 0
"""
print(res)

# ~ 按位非 (針對(duì)于補(bǔ)碼進(jìn)行操作,按位取反,包含每一位)
""" -(n+1) """
# res = ~22
res = ~19
print(res)
"""
原碼:000 ... 10011
反碼:000 ... 10011
補(bǔ)碼:000 ... 10011
補(bǔ)碼:   000 ... 10011
按位非: 111 ... 01100
給你補(bǔ)碼->原碼
補(bǔ)碼:111 ... 01100
反碼:100 ... 10011
原碼:100 ... 10100 => -20
"""
res = ~-19
print(res)
"""
原碼:100 ... 10011
反碼:111 ... 01100
補(bǔ)碼:111 ... 01101
補(bǔ)碼:   111 ... 01101
按位非: 000 ... 10010
給你補(bǔ)碼->原碼 (因?yàn)槭钦麛?shù) ,原反補(bǔ)相同)
000 ... 10010 => 18
"""

3.2 小總結(jié)

總結(jié):
	個(gè)別運(yùn)算符:
		運(yùn)算符優(yōu)先級(jí)最高的: **
		運(yùn)算符優(yōu)先級(jí)最低的: =
		()可以提升優(yōu)先級(jí)
	一元運(yùn)算符 > 二元運(yùn)算符 (優(yōu)先級(jí))
		一元運(yùn)算符 : 同一時(shí)間,操作一個(gè)值 ~ - 
		二元運(yùn)算符 : 同一時(shí)間,操作一個(gè)值 + - * / ....
	同一種類運(yùn)算符:
		算數(shù)運(yùn)算符 : 乘除 > 加減
		邏輯運(yùn)算符 : () > not > and > or 
		位運(yùn)算符   : ( << >> ) > & > ^ > |
	整體排序:
		算數(shù)運(yùn)算符 > 位運(yùn)算符 > 比較運(yùn)算符 > 身份運(yùn)算符 > 成員運(yùn)算符 > 邏輯運(yùn)算符
		賦值運(yùn)算符用來(lái)做收尾
"""
res = 5+5 << 6 // 3 is 40 and False
"""
res = 10 << 2 is 40 and False
res = 40 is 40 and False
res = True and False
res = False
"""
print(res)
# 用括號(hào)提升下優(yōu)先級(jí)
res = (5+5) << (6//3) is 40 and False

4. 代碼塊_單項(xiàng)_雙項(xiàng)分支

4.1 代碼塊

代碼塊:以冒號(hào)作為開始,用縮進(jìn)來(lái)劃分相同的作用域,這個(gè)整體是代碼塊

"""作用域: 作用的范圍"""
if 10 == 11:
	print(1)
	print(2)
	print(3)
print(4)

# 縮進(jìn):要么全都使用\t tab  要么全都是使用4個(gè)空格(也可以兩個(gè)空格,標(biāo)準(zhǔn)的是四個(gè)),來(lái)表達(dá)相同的作用域,不能混再一起;
"""
if 10 == 10:
	print(1)
    print(2)
"""
# 其他語(yǔ)言的寫法 (了解)
"""
if(10 == 10){
	print(1)
					print(2)
																								print(3)
}
"""

4.2 流程控制

"""
流程: 代碼執(zhí)行的過程
控制: 對(duì)代碼執(zhí)行過程中的把控
三大結(jié)構(gòu):
(1)順序結(jié)構(gòu): 默認(rèn)代碼從上到下,依次執(zhí)行
(2)分支結(jié)構(gòu): 單項(xiàng)分支 雙向分支 多項(xiàng)分支 巢狀分支
(3)循環(huán)結(jié)構(gòu): while / for
"""

4.3 單項(xiàng)分支

"""
if 條件表達(dá)式:
	code1
	code2
當(dāng)條件表達(dá)式成立,返回True,執(zhí)行對(duì)應(yīng)的代碼塊
"""
zhiye = "程序員"
if zhiye == "程序員":
	print("拿高薪")
	print("錢多,話少,死的早")
	print("發(fā)量日漸稀少")

4.4 雙項(xiàng)分支

"""
if 條件表達(dá)式:
	code1  ..
else:
	code2 ... 
如果條件表達(dá)式成立,返回True ,執(zhí)行if這個(gè)區(qū)間的代碼塊
如果條件表達(dá)式不成立,返回False,執(zhí)行else這個(gè)區(qū)間的代碼塊
if   分支的代碼塊也叫做真區(qū)間
else 分支的代碼塊也叫做假區(qū)間
"""

zhiye = "強(qiáng)盜"
zhiye = "律師"
if zhiye == "強(qiáng)盜":
	print("打他")
	print("罵他")
	print("喂他辣椒水")
else:
	print("給你一朵紅花")

# input 等待用戶輸入字符串 (注意:結(jié)果一定是字符串)
"""
name = input("你好~ 你媽貴姓~")
print(name , type(name))
"""
# ### 模擬網(wǎng)站登錄 
# 如果admin = wangwen  密碼:password = 111 顯示登錄成功,否則顯示登錄失敗
# admin = "wangwen"
# password = "111"
admin = input("請(qǐng)輸入您的賬號(hào):")
password =  input("請(qǐng)輸入您的密碼:")
if admin == "wangwen" and password == "111":
	print("登錄成功")
else:
	print("登錄失敗")

5. 小作業(yè)

1.99//4  ,  99%4 ,  -99 %4  ,  -99 %-4值是多少
2.成員和身份運(yùn)算符如何使用
3.邏輯運(yùn)算符優(yōu)先級(jí)?邏輯短路在什么情況下發(fā)生?
4.優(yōu)先級(jí)最高和最低的運(yùn)算符是?
5.左移右移后的值如何計(jì)算?按位非的公式?
6.~(-25) ~25 推到一下過程
7.res = 17>15 or 78<11 or 7 and 8 and not True is True  res=?
8.計(jì)算表達(dá)式的值
    1).6 or 2 > 1      
    2).3 or 2 > 1      
    3).0 or 5 > 4      
    4).5 < 4 or 3          
    5).2 > 1 or 6      
    6).3 and 2 > 1     
    7).0 and 3 > 1    
    8).2 > 1 and 3    
    9).3 > 1 and 0    
    10).3 > 1 and 2 or 2 < 3 and 3 and 4 or 3 > 2
    11)not 2 > 1 and 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6
9.提示用戶輸入 "如何在dnf中變得更強(qiáng)?". 如果輸入的是充錢,打印"馬化騰愛你" ,反之輸出,"你想一想,不充錢怎么可能變得更強(qiáng)"

總結(jié)

本篇文章就到這里了,希望能夠給你帶來(lái)幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!

相關(guān)文章

  • python?字典常用方法超詳細(xì)梳理總結(jié)

    python?字典常用方法超詳細(xì)梳理總結(jié)

    這篇文章主要介紹了Python數(shù)據(jù)類型字典dictionary,字典是另一種可變?nèi)萜髂P?,且可存?chǔ)任意類型對(duì)象。本篇文字將詳細(xì)講述字典的常用方法,需要的可以參考一下
    2022-03-03
  • Python程序語(yǔ)言快速上手教程

    Python程序語(yǔ)言快速上手教程

    本文是面向SEO人群的Python程序語(yǔ)言入門教程,也適用于其他沒有程序基礎(chǔ)但想學(xué)習(xí)些程序,以解決簡(jiǎn)單的實(shí)際應(yīng)用需求的人群。在后面會(huì)盡量用最基礎(chǔ)的角度來(lái)介紹這門語(yǔ)言
    2012-07-07
  • Python中處理字符串的相關(guān)的len()方法的使用簡(jiǎn)介

    Python中處理字符串的相關(guān)的len()方法的使用簡(jiǎn)介

    這篇文章主要介紹了Python中處理字符串的相關(guān)的len()方法的使用簡(jiǎn)介,是Python入門的基礎(chǔ)知識(shí),需要的朋友可以參考下
    2015-05-05
  • pandas 兩列時(shí)間相減換算為秒的方法

    pandas 兩列時(shí)間相減換算為秒的方法

    下面小編就為大家分享一篇pandas 兩列時(shí)間相減換算為秒的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來(lái)看看吧
    2018-04-04
  • Python中列表,元組,字典和集合的區(qū)別及它們之間的轉(zhuǎn)換

    Python中列表,元組,字典和集合的區(qū)別及它們之間的轉(zhuǎn)換

    這篇文章主要介紹了Python中列表,元組,字典和集合的區(qū)別及它們之間的轉(zhuǎn)換方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-05-05
  • python使用三角迭代計(jì)算圓周率PI的方法

    python使用三角迭代計(jì)算圓周率PI的方法

    這篇文章主要介紹了python使用三角迭代計(jì)算圓周率PI的方法,實(shí)例分析了Python迭代算法的技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-03-03
  • Python接口測(cè)試環(huán)境搭建過程詳解

    Python接口測(cè)試環(huán)境搭建過程詳解

    這篇文章主要介紹了Python接口測(cè)試環(huán)境搭建過程詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-06-06
  • 5種Python統(tǒng)計(jì)次數(shù)方法技巧

    5種Python統(tǒng)計(jì)次數(shù)方法技巧

    這篇文章主要給大家分享的是5種Python統(tǒng)計(jì)次數(shù)方法技巧,文章主要包括字典 dict 統(tǒng)計(jì)、collections.defaultdict 統(tǒng)計(jì)、List count方法、集合(set)和列表(list)統(tǒng)計(jì)、collections.Counter方法,感興趣的小伙伴一起進(jìn)入下面文章內(nèi)容吧
    2021-11-11
  • Python實(shí)現(xiàn)常見的4種坐標(biāo)互相轉(zhuǎn)換

    Python實(shí)現(xiàn)常見的4種坐標(biāo)互相轉(zhuǎn)換

    主流被使用的地理坐標(biāo)系并不統(tǒng)一,常用的有WGS84、GCJ02(火星坐標(biāo)系)、BD09(百度坐標(biāo)系)以及百度地圖中保存矢量信息的web墨卡托,本文利用Python編寫相關(guān)類以實(shí)現(xiàn)4種坐標(biāo)系統(tǒng)之間的互相轉(zhuǎn)換,希望對(duì)大家有所幫助
    2023-02-02
  • 關(guān)于Python-faker的函數(shù)效果一覽

    關(guān)于Python-faker的函數(shù)效果一覽

    今天小編就為大家分享一篇關(guān)于Python-faker的函數(shù)效果一覽,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來(lái)看看吧
    2019-11-11

最新評(píng)論