python 運算(布爾值,自增,比較,邏輯)
python 流程控制
python 推導(dǎo)式
深度拷貝
python運算
布爾值:
True 非0的數(shù)字,非空的字符串,列表,元素,字典
False 0 "" () [] {} None
自增運算:
var int i
i = 0 ,i < 10
i++
i += 1
#其他語言出現(xiàn)的循環(huán)
邏輯運算
布爾值可以用邏輯運算符and(且);or(or);not(非)來運算
and(與),所有條件符合才為True
>>> True and True
True
>>> True and False
False
>>> False and False
False
or(或)運算,只要其中有一個為True都為True
>>> True or False
True
>>> True or True
True
>>> False or False
False
not(非)運算
>>> not True
False
>>> not False
>>> username = 'shuai'
>>> password = '123'
>>> username == 'shuai' and password == '123'
True
True
空值;
空值為None
None不能理解為0;0是有意義的,None是一個特殊的空值
變量;
變量必須是大小寫字母,數(shù)字和_的組合
自增運算
其他語言的自增運算
var int i
i = 0
i++ 等同后面的i = i + 1
printf(i)
在python中
i = 10
i += 1 等同 i = i + 1
i += 2 等同 i = i + 2
i -= 1 等同 i = i - 1
i *= 1 等同 i = i * 1
i /= 1 等同 i = i / 1
比較(關(guān)系)運算符
python中的比較運算符如下表
==
檢查兩個操作數(shù)的值是否相等,如果是則條件 變?yōu)檎妗?
如a=3,b=3則( a == b) 為 True.
!=
檢查兩個操作數(shù)的值是否相等,如果值不相等, 則條件變?yōu)檎妗?
如a=1,b=3則(a != b) 為 True.
<> 只在python2中存在,python中已經(jīng)取消了
檢查兩個操作數(shù)的值是否相等,如果值不相等,
則條件變?yōu)檎?。Python和在Pascal等特有方式,java和c沒有,在Python3中廢棄了
如a=1,b=3則(a <> b) 為 True。 這個類似亍 != 運算符
>
檢查左操作數(shù)的值是否大亍右操作數(shù)的值,如 果是,則條件成立。
如a=7,b=3則(a > b) 為 True.
<
檢查左操作數(shù)的值是否小亍右操作數(shù)的值,如 果是,則條件成立。
如a=7,b=3則(a < b) 為 False.
>=
檢查左操作數(shù)的值是否大亍戒等亍右操作數(shù)的 值,如果是,則條件成立。
如a=3,b=3則(a >= b) 為 True.
<=
檢查左操作數(shù)的值是否小亍戒等亍右操作數(shù)的 值,如果是,則條件成立。
如a=3,b=3則(a <= b) 為 True.
比較運算
>>> 1 > 0
True
>>> 1 < 0
False
>>> 1 == 1.0
True
>>> 1 >= 1.0
True
>>> 1 <= 1.0
True
>>> 1 != 1.0
False
>>> 1 <> 1.0
SyntaxError: invalid syntax
>>> 1 is 1.0
False
>>> print(id(1),id(1.0))
140728753611408 2998816717992
>>> 1 is 1
True
邏輯運算符
and
x and y
布爾"不" - 如果 x 為 False,x and y 返回 False,否則它返回 y 的計算值。
那如果 x 總為 False 呢?
or
x or y
布爾"或" - 如果 x 是 True,它返回 True,否 則它返回 y 的計算值。
那如果 x 總為 True 呢?
not
not x
布爾"非" - 如果 x 為 True,返回 False 。如 果 x 為 False,它返回 True。
>>> True or False and False
True
如果先算or就會輸出:False,所以and > or
>>> not False and False
False
如果先not就會輸出True
>>> not False or True
True
如果先or就會輸出False
>>> True or False
True
>>> False or True
True
運算順序 not and or 非且或
python 流程控制
流程控制 個別的指令(或是陳述,子程序)運行或求值的順序
python代碼正常情況下執(zhí)行的順序是從左到右,從上到下的,但也有不是這樣的
語句A--->>語句B----->>語句C
if 判斷語句
for循環(huán)語句
while 循環(huán)語句
python是靠冒號和縮進(jìn)來確定代碼的歸屬的
if 判斷語句
執(zhí)行順序
if elif else
a = float(input('輸入一個數(shù)字:'))
if a == 1:
print('shuai')
elif a == 5 :
print('ge')
else:
print('%d is not 5 and 1'%(a))
輸入一個數(shù)字:10
10 is not 5 and 1
if 判斷要注意的點
注意判斷的范圍,判斷條件范圍大的要放在下面
a = int(input('輸入:'))
if a < 10:
print('%d 小于10'%(a))
elif a < 5:
print('%d 小于5'%(a))
else:
print('%d 大于10'%(a)) 注意%d 大于10' 中間不要, %(a)
輸入:8
8 小于10
區(qū)分if elif 和 if if 的區(qū)別
判斷兩種可能,
a = int(input('shuru:'))
if a < 15:
print(int(a),'< 15')
elif a < 20:
print(int(a),'< 20')
else:
print(none)
shuru:19
19 < 20
判斷兩次,先判斷是否滿足a ,再判斷是否滿足B,
>>>
'''
a = 10
if a < 15:
print('a < 15')
if a < 20:
print('a < 20')
a < 15
a < 20
for循環(huán)語句
其他語言
for (var int i,i < 3,i++){
print("nice")
}
python 當(dāng)中采用的是for in結(jié)構(gòu)
for in
#i是一個變量
#‘a(chǎn)bcd’是可迭代對象
#將‘a(chǎn)bcd’依次賦值給i每次賦值作為一次循環(huán)
for i in 'abcd':
print(i,end='\t')
print('hello word')
a hello word
b hello word
c hello word
d hello word
嵌套循環(huán)
外層循環(huán)一次
內(nèi)層循環(huán)一遍
for i in 'abcd':
print(i)
for j in range(2):
print(j)
a
0
1
b
0
1
c
0
1
d
0
打印乘法口訣表
for i in range(10):
for m in range(1,i+1):
sum = i*m
if m < i:
print(m,'*',i,'=',sum,end='')
else:
print(m,'*',i,'=',sum)
while循環(huán)語句
while循環(huán),while循環(huán)和for循環(huán)不同,for循環(huán)是一個廣度遍歷,而while循環(huán)式一個深度遍歷
while循環(huán),指當(dāng)滿足while的條件的時候,就一直循環(huán)執(zhí)行while的語句塊,直到不滿足
a = 0
while a < 10:
print (a)
a += 1
0
1
2
3
4
5
6
7
8
9
a = 0
while a < 10:
print (a)
a += 1
else:
print('shutdown')
0
1
2
3
4
5
6
7
8
9
shutdown
>>>
死循環(huán)會阻礙程序的運行
死循環(huán)多數(shù)用于圖形化,游戲等可視化的主循環(huán)
列如:
a = 0
while a < 100:
print('down')
三種流程控制語句
pass ,pass
寫在任何縮進(jìn)的語句塊部分,只是占位,什么事情都不做,只是未來滿足python的語法要求
for i in range(5): #不加pass會報錯,
if i == 2:
pass
print(i)
0
1
2
3
4
break 跳出上一層循環(huán)
for i in range(5):
if i == 2:
break
print(i)
0
1
continue跳出本次循環(huán)
for i in range(5): #直接跳過了2這個循環(huán)
if i == 2:
continue
print(i)
0
1
3
4
>>>
python 基礎(chǔ)(三)
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。
相關(guān)閱讀更多精彩內(nèi)容
- -- coding: utf-8 -- @Time : 2019/11/6 9:06 @Author : ...
- 1. 順序結(jié)構(gòu) 順序結(jié)構(gòu)就是程序從上到下一行行的執(zhí)行,中間沒有任何判斷和跳轉(zhuǎn) 2. if分支結(jié)構(gòu) 1. if條件的...
- 字典是Python的映射結(jié)構(gòu),是一種可變類型容器,且可存儲任意類型對象。 一.字典的形式: 字典的每個鍵值(key...
- 一:list Python內(nèi)置的一種數(shù)據(jù)類型是列表:list。list是一種有序的集合,可以隨時添加和刪除其中的元...