成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

怎么理解python運算對象、運算符、表達式和語句

本篇內容主要講解“怎么理解python運算對象、運算符、表達式和語句”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“怎么理解python運算對象、運算符、表達式和語句”吧!

成都創(chuàng)新互聯(lián)公司是一家集網(wǎng)站建設,鎮(zhèn)康企業(yè)網(wǎng)站建設,鎮(zhèn)康品牌網(wǎng)站建設,網(wǎng)站定制,鎮(zhèn)康網(wǎng)站建設報價,網(wǎng)絡營銷,網(wǎng)絡優(yōu)化,鎮(zhèn)康網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強企業(yè)競爭力??沙浞譂M足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時我們時刻保持專業(yè)、時尚、前沿,時刻以成就客戶成長自我,堅持不斷學習、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實用型網(wǎng)站。

編程的本質就是數(shù)據(jù)和運算,數(shù)據(jù)由基本數(shù)據(jù)類型、數(shù)據(jù)結構來表示,運算就是對這些數(shù)據(jù)的各種操作,基本的加減乘除、是非判斷、流程控制等等。這些操作就是今天我們要講的運算符、表達式和語句。

提示:運算和操作這兩個概念在編程中往往是一樣的

比如下面這一行代碼:

a = 5; b = a + 7; c = a if a > b else b

先來分解一下這一行:

  • 語句: 由表達式組成。此例共三條語句,用分號;分開,即一個物理行有三個邏輯行;

  • 表達式: 由運算符和操作對象組成。此例中的表達式有a + 7a > b等;

  • 運算對象: 即各種對象。此例中的a, b, c, 5, 7等。

用一行表示它們的關系就是:

運算對象 + 運算符 -> 表達式 -> 語句

運算對象和運算符構成表達式,表達式構成語句

運算對象

運算對象就是由各種對象構成的集合,這些對象里面有些是常量,有些是變量。

常量

Python中的常量我們已經見過很多了,比如整數(shù):9, 7, 8等等,浮點數(shù):3.14, 0.618等等,字符串:'猿人學Python',這些常量我們看到它們時就知道它們的意思,這就是字面意義上的常量。

字面意義上的常量就是按照它們的字面意義使用它們的值。比如,數(shù)字8總是代表它自己,它是一個常量,不能改變它的值。

變量

常量代表具有特定意義的對象,但不足以滿足編程的需要。編程經常需要一種既可以存儲數(shù)據(jù)有可以對它進行運算(操作)的東東,這個東東就是變量。編程中要經常使用變量,就需要給變量起個名字:變量名。變量名的起名規(guī)則就是前面講Python基本語法時提到的標識符,忘了的小猿可以再去看看那一節(jié)。

最開始那一行Python代碼中的a, b, c都是變量,而5, 12, 5就是它們各自存儲的值。如果再來一句a = a + 3,a的值就變成了8,變量a的值就變了。
變量的賦值就是給變量一個值,比如a = 3,就是給a變量以3的值。

a = 3  # 把3賦值給a,此時a的值為3
b = a  # 把a賦值給b,此時b的值等于a的值,也是3
c, d = a, b  # 這是多重賦值,相當于 c = a; d = b

運算符

運算符就是對運算對象進行的具體運算名稱。不同的運算符代表不同的運算,比如加減乘除。
通過Python shell可以方便的體驗運算符的使用:

In [115]: 2 + 5
Out[115]: 7
In [116]: 8 * 9
Out[116]: 72

下面我們用一個表格來清晰的列出各種運算符及其用法。

運算符名稱含義示例

+兩個對象相加2 + 5得7; '猿人學' + 'Python'得到'猿人學Python'

-兩數(shù)相減,或負數(shù)10 - 5得到5;-3.1表示負數(shù)。

*兩數(shù)相乘,或字符串重復多次3 * 7得到21;'py' * 2得到pypy

**返回x的y次冪2**8得256; 2.3**3得12.167

/兩數(shù)相除10 / 2得到5;10 / 3 得到 3.333333

//向下取整除兩數(shù)相除,返回離商最近且小的整數(shù)。如果除數(shù)和被除數(shù)中有浮點數(shù),返回的也是浮點數(shù)。11 // 2得到5;-11 // 2得到-6;5 // 1.34得到3.0.

%模除求余數(shù)10 % 3得到1;10 % 3.3得到0.1;-10 % 3.3得到3.2,因為-10 // 3.3得 -4,-10 - 3.3*-4得到3.2.

<<左移二進制操作,把數(shù)字的每個比特位向左移動特定位數(shù)(數(shù)字在內存中以二進制0,1表示)2 << 3得到16,2的二進制是:00000010,左移3位變成:0b00010000即16

>>右移把一個數(shù)的比特位向右移動特定位數(shù)2 >> 1得到1

&位與兩數(shù)對應的比特位進行與操作8 & 9得8

``位或兩數(shù)對應的比特位進行或操作`89`得9
^位異或兩數(shù)對應的比特位進行異或操作8^9得1

位反一個數(shù)x的比特位全部取反,值為-(x+1)~8的 -9

<小于返回x是否小于y。所有比較運算符返回的不是True就是False8 < 9得到True。

>大于返回x是否大于y8 > 9得到False。

<=小于等于返回x是否小于等于yx = 2; y = 3; x <= y 返回True

>=大于等于返回x是否大于等于yx = 6; y = 4; x >= y 返回True

==等于比較對象是否相等2 == 2返回True3 == 2返回False,'str' == 'str'返回True

!=不等于比較對象是否不相等1 != 3返回True3 != 3返回False


not布爾非如果x是True則返回False;如果x是False則返回Truex = False; not x返回True

and布爾與x and y 如果x是False則返回False,否則返回y的布爾值x = False; y = True; x and y返回False,因為x是False。這種情況下,Python不再檢驗y的布爾值,因為and左邊的x已經是False了,不管右邊的y是真是假都不影響整個表達式的值,所以就不再去驗證y是真是假。這叫做“短路求值”。

or布爾或如果x是True則返回True,否則返回y的布爾值x = True; y = False; x or y返回True。這里同樣適用“短路求值”

運算符優(yōu)先級(Operator precedence)

小時候學數(shù)學的時候,我們知道先乘除后加減,比如要算2 + 5 * 6的話,先算5 * 6得到30, 再算2 + 30得到32. 也就是說,乘法運算符的優(yōu)先級高于加法運算符。

下面的表格就是Python的運算符的優(yōu)先級,從低到高排列,同一個單元格里面的運算符具有相同的優(yōu)先級,這時候運算順序從左到右。不過,還是建議大家通過使用圓括號來分組表達式(運算符和運算對象),這樣可以清楚的指出運算的先后順序,同時也讓程序更加易讀。

運算符描述
lambdaLambda函數(shù)表達式
if-else條件表達式
or布爾或
and布爾與
not布爾非
innot inisis not<<=>>=!===比較,包括成員測試和同一性測試
``位或
^位異或
&位與
<<>>移位
+-加、減
*@///%乘,矩陣乘法,除,向下取整除,模除
+x-x~x整數(shù),負數(shù),位非(位反)
**冪運算符。它的綁定不如其右側的算數(shù)或按位一元運算符緊密,所以,2**-1 的值是0.5.
awaitawait表達式(asyncio中使用)
x[index]x[index:index]x(arguments...)x.attribute下標,切片,函數(shù)調用,屬性引用
(expressions...)[expressions...]{key:value...}{expressions...}綁定或元組顯示,列表顯示,字典顯示,集合顯示

上面表格中有我們還沒有接觸到的運算符,這將會在后面的章節(jié)中講解。

程序根據(jù)上表的順序來進行運算,但是我們也可以通過圓括號來改變它們的計算順序,比如(2 + 7) * 3中,就先計算圓括號里面的加法,然后再進行乘法。這個原則跟小學時學到的算術是一樣的。

表達式(Expression)

表達式是一段可以計算為某個值的語法片段。換句話說,就是表達元素的累積,比如文字,名稱,屬性訪問,運算符或函數(shù)調用,它們都返回一個值。與許多其它語言相比,并非所有語言結構都是表達式。還有一些語句不能用作表達式,比如while。賦值也是語句,但不是表達式。

從上面對表達式的定義來看,a > 3是表達式,a = 3不是表達式,而是賦值語句。

語句(Statements)

語句是程序段(一個代碼“塊”)的組成單位。一條語句可以是一個表達式或某個帶有關鍵字的結構,例如ifwhilefor。
語句的例子:

a = 5  # 賦值語句
if a > 3:  #條件語句,其中 a > 3是表達式
    print('a > 3')  #輸出語句

到此,相信大家對“怎么理解python運算對象、運算符、表達式和語句”有了更深的了解,不妨來實際操作一番吧!這里是創(chuàng)新互聯(lián)網(wǎng)站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續(xù)學習!

新聞名稱:怎么理解python運算對象、運算符、表達式和語句
鏈接分享:http://jinyejixie.com/article10/jjhigo.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站制作、網(wǎng)頁設計公司網(wǎng)站策劃、商城網(wǎng)站、網(wǎng)站導航

廣告

聲明:本網(wǎng)站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站托管運營
荆州市| 平原县| 饶平县| 大丰市| 遂昌县| 黄浦区| 邻水| 古丈县| 张家口市| 临夏县| 进贤县| 渭源县| 黎川县| 拜城县| 岢岚县| 奉贤区| 哈尔滨市| 平昌县| 阆中市| 曲沃县| 容城县| 双辽市| 周宁县| 杨浦区| 阿巴嘎旗| 阿巴嘎旗| 前郭尔| 建昌县| 建昌县| 辽中县| 拉萨市| 太仓市| 高尔夫| 屯昌县| 普陀区| 托克逊县| 八宿县| 泊头市| 遂宁市| 长治市| 金阳县|