賦值運算
賦值诬滩,就是往盤子里放一些食品
在Python中霹粥,使用' = ' 表示賦值
一般形式為:
變量 = 表達(dá)式
這里的 y = x 指的是將 x 變量的值復(fù)制一份給 y
關(guān)系運算符
關(guān)系運算符,說得通俗點就是作比較的比較運算符
還記得這個經(jīng)典的比較的廣告么:
不知道這個孩子現(xiàn)在到底有多強(qiáng)了
比較運算通常是比較兩個數(shù)值型或者字符串型數(shù)據(jù)疼鸟,然后返回一個布爾值
小明:老濕后控!什么是布爾值?
布爾值就是bool值
它只有兩種可能空镜,‘真’或者是‘假’
關(guān)系運算符有以下幾種:
> ? ? ? ? ? ? ? ? ? ? ? ? ?大于
>= ? ? ? ? ? ? ? ? ? ? ? 大于或等于
<= ? ? ? ? ? ? ? ? ? ? ? 小于或等于
< ? ? ? ? ? ? ? ? ? ? ? ? 小于
== ? ? ? ? ? ? ? ? ? ? ? 等于(注意和賦值的 = 區(qū)分開)
!= ? ? ? ? ? ? ? ? ? ? ? ?不等于
is ? ? ? ? ? ? ? ? ? ? ? ? 比較兩個引用是否指向了同一個對象(引用比較)
is not比較兩個引用是否指向了不同對象(引用比較)
我們舉幾個例子看一下:
注意浩淘,在做數(shù)值比較的時候,這里的True相當(dāng)于1姑裂,F(xiàn)alse相當(dāng)于0
甚至可以有這種操作:
我們繼續(xù):
下面是見證奇跡的時刻:
大家看到?jīng)]馋袜,is和==應(yīng)該怎么理解,怎么區(qū)別呢舶斧?
Python中的對象包含三要素:id欣鳖、type、value
其中id用來唯一標(biāo)識一個對象茴厉,即在內(nèi)存開辟了一塊空間暫時存放這個變量
type標(biāo)識對象的類型泽台,如之前說過的str,int矾缓,float等
value是對象的值
is判斷的是a對象是否就是b對象怀酷,是通過id來判斷的
==判斷的是a對象的值是否和b對象的值相等,是通過value來判斷的
我們再看看:
a和b的id是一樣的嗜闻,就是說他們的值指的是同一個位置同一個值
而c的id和他們不一樣蜕依,c指向的值和他們不一樣
我們繼續(xù):
剛才的沒有涉及到字符串的比較
字符串也可以比較大小
規(guī)則是:按照英文字母的排序進(jìn)行比較
abcdefg...
流程是:
首先取兩個字符串的第1個字符比較,較大的字符所在的字符串更大
如果第一個字符相同琉雳,再取兩個字符串的第2個字符比較样眠,較大的字符所在的字符串更大
其余以此類推
如果比到最后都相同,則兩個字符串相等
如果某個字符串已經(jīng)被比較完了翠肘,另一個還剩一部分檐束,則剩一部分的字符串比較大
特別要注意的,如果是空字符串和非空字符串比較束倍,空串小
我們舉例看一下:
是不是感覺自己萌萌噠
張嘴吃藥
再看個例子【邪魅一笑】
hhhhh被丧,這個你知道么
是不是刷新了你的三觀
這是因為,這是Python中比較浮點數(shù)是否相等機(jī)制是他們的差距是否小于一個極小的值來判斷
所以是精度問題绪妹,你不要糾結(jié)啦~
等等
再給你看個寶貝
還可以這樣玩
我們解釋一下:
常用字符大小關(guān)系是:
空字符串<空格<'0'~'9'<'A'~'Z'<'a'~'z<漢子
邏輯運算符
邏輯運算符有三種甥桂,與 或 非
and:邏輯‘與’運算符,只有當(dāng)and兩邊都是真邮旷,結(jié)果才是真
or:邏輯‘或’運算符格嘁,只要當(dāng)or一邊的是真的,結(jié)果就是真
not:邏輯非運算符廊移,反轉(zhuǎn)邏輯值
我們看幾個例子:
表達(dá)式
值得注意的是:
當(dāng)數(shù)值運算時糕簿,不同類型的數(shù)值會偷偷發(fā)生轉(zhuǎn)換類型,然后運算
當(dāng)int與float運算時狡孔,int常常轉(zhuǎn)為float再計算
證明如下:
剛才運算得到的結(jié)果b是float了
運算符優(yōu)先級如下:
今天作業(yè):按照我的操作走一遍(敢不敢換個其他的說法)
下課
人生苦短懂诗,我選Python