python数据类型和数据运算
數字
整型
包括正整數和負整數,和數學的表示方法一樣。如:1、100、8008、-12等。
浮點型
浮點數字也稱為小數,如果按照科學計數法表示時,小數點的位置是可變的。如:1.23x109==12.3x108。
布爾值
布爾值只有True、False兩種值,要么是True、要么是False。
字符串
字符串是用單引號或雙引號括起來的內容。如“abc”‘、'bsc'等。‘’或者“”這種空字符串也是字符串類型的。如果要輸出的字符串中含有單引號需要用雙引號括起來,如:"I'm Ok"
需要輸出雙引號可以用轉義輸出:
print("I'm \" Ok")#I'm " Ok?空值
Python中的空值用None來表示,None和0不一樣,None是一個特殊的空值,0是有意義的。
列表
字典
數據運算
Python支持以下類型的運算符 (以下為摘抄)
- 1.算術運算符
- 2.比較(關系)運算符
- 3.賦值運算符
- 4.邏輯運算符
- 5.按位運算符
- 6.成員運算符
- 7.身份運算符
下面讓我們依次來看看所有的運算符。
1.算術運算符
假設變量a的值是10,變量b的值是21,則 -
| + | 加法運算,將運算符兩邊的操作數增加。 | a + b = 31 |
| - | 減法運算,將運算符左邊的操作數減去右邊的操作數。 | a – b = -11 |
| * | 乘法運算,將運算符兩邊的操作數相乘 | a * b = 210 |
| / | 除法運算,用右操作數除左操作數 | b / a = 2.1 |
| % | 模運算,用右操作數除數左操作數并返回余數 | b % a = 1 |
| ** | 對運算符進行指數(冪)計算 | a ** b,表示10的21次冪 |
| // | 地板除 - 操作數的除法,其結果是刪除小數點后的商數。 但如果其中一個操作數為負數,則結果將被保留,即從零(向負無窮大)舍去 | 9//2 = 4?,?9.0//2.0 = 4.0,?-11//3 = -4,?-11.0//3 = -4.0 |
有關算術運算符的示例代碼,請參考::http://www.yiibai.com/python/arithmetic_operators_example.html
2.比較(關系)運算符
比較(關系)運算符比較它們兩邊的值,并確定它們之間的關系。它們也稱為關系運算符。假設變量a的值10,變量b的值是20,則 -
| == | 如果兩個操作數的值相等,則條件為真。 | (a == b)求值結果為?false |
| != | 如果兩個操作數的值不相等,則條件為真。 | (a != b)求值結果為?true |
| > | 如果左操作數的值大于右操作數的值,則條件成為真。 | (a > b)求值結果為?false |
| < | 如果左操作數的值小于右操作數的值,則條件成為真。 | (a < b)求值結果為?true |
| >= | 如果左操作數的值大于或等于右操作數的值,則條件成為真。 | (a >= b)求值結果為?false |
| <= | 如果左操作數的值小于或等于右操作數的值,則條件成為真。 | (a <= b)求值結果為?true |
有關比較(關系)運算符的示例代碼,請參考:http://www.yiibai.com/python/comparison_operators_example.html
3.賦值運算符
假設變量a的值10,變量b的值是20,則 -
| = | 將右側操作數的值分配給左側操作數 | c = a + b表示將a + b的值分配給c |
| += | 將右操作數相加到左操作數,并將結果分配給左操作數 | c + = a等價于c = c + a |
| -= | 從左操作數中減去右操作數,并將結果分配給左操作數 | c -= a?等價于?c = c - a |
| *= | 將右操作數與左操作數相乘,并將結果分配給左操作數 | c *= a?等價于?c = c * a |
| /= | 將左操作數除以右操作數,并將結果分配給左操作數 | c /= a?等價于?c = c / a |
| %= | 將左操作數除以右操作數的模數,并將結果分配給左操作數 | c %= a?等價于?c = c % a |
| **= | 執行指數(冪)計算,并將值分配給左操作數 | c **= a?等價于?c = c ** a |
| //= | 運算符執行地板除運算,并將值分配給左操作數 | c //= a?等價于?c = c // a |
有關賦值運算符的示例代碼,請參考:http://www.yiibai.com/python/assignment_operators_example.html
4.邏輯運算符
Python語言支持以下邏輯運算符。假設變量a的值為True,變量b的值為False,那么 -
| and | 如果兩個操作數都為真,則條件成立。 | (a and b)的結果為False |
| or | 如果兩個操作數中的任何一個非零,則條件成為真。 | (a or b)的結果為True |
| not | 用于反轉操作數的邏輯狀態。 | not(a and b)?的結果為True。 |
有關邏輯運算符的示例代碼,請參考:http://www.yiibai.com/python/logical_operators_example.html
5.按位運算符
按位運算符執行逐位運算。 假設變量a = 60; 和變量b = 13; 現在以二進制格式,它們將如下 -
a = 0011 1100b = 0000 1101-----------------a&b = 0000 1100a|b = 0011 1101a^b = 0011 0001~a = 1100 0011 ShellPython的內置函數bin()可用于獲取整數的二進制表示形式。
以下是Python語言支持位運算操作符 -
| & | 如果它存在于兩個操作數中,則操作符復制位到結果中 | (a & b)?結果表示為?0000 1100 |
| 如果它存在于任一操作數,則復制位。 | (ab) = 61 結果表示為?0011 1101 | |
| ^ | 二進制異或。如果它是一個操作數集合,但不是同時是兩個操作數則將復制位。 | (a ^ b) = 49?(結果表示為?0011 0001) |
| ~ | 二進制補碼,它是一元的,具有“翻轉”的效果。 | (~a ) = -61有符號的二進制數,表示為1100 0011的補碼形式。 |
| << | 二進制左移,左操作數的值由右操作數指定的位數左移。 | a << 2 = 240?(結果表示為?1111 0000) |
| >> | 二進制右移,左操作數的值由右操作數指定的位數右移。 | a >> 2 = 15(結果表示為0000 1111) |
有關按位運算符的示例代碼,請參考:http://www.yiibai.com/python/bitwise_operators_example.html
6.成員運算符
Python成員運算符測試給定值是否為序列中的成員,例如字符串,列表或元組。 有兩個成員運算符,如下所述 -
| in | 如果在指定的序列中找到一個變量的值,則返回true,否則返回false。 | - |
| not in | 如果在指定序列中找不到變量的值,則返回true,否則返回false。 | - |
有關成員運算符的示例代碼,請參考:http://www.yiibai.com/python/membership_operators_example.html
7.身份運算符
身份運算符比較兩個對象的內存位置。常用的有兩個身份運算符,如下所述 -
| is | 如果運算符任一側的變量指向相同的對象,則返回True,否則返回False。 | ? |
| is not | 如果運算符任一側的變量指向相同的對象,則返回True,否則返回False。 | - |
有關身份運算符的示例代碼,請參考:http://www.yiibai.com/python/identity_operators_example.html
8. 運算符優先級
下表列出了從最高優先級到最低優先級的所有運算符,如下所示 -
| 1 | ** | 指數(次冪)運算 |
| 2 | ~?+?- | 補碼,一元加減(最后兩個的方法名稱是+@和-@) |
| 3 | *?/?%?// | 乘法,除法,模數和地板除 |
| 4 | +?- | ? |
| 5 | >>?<< | 向右和向左位移 |
| 6 | & | 按位與 |
| 7 | ^ | 按位異或和常規的“OR” |
| 8 | <=?<?>?>= | 比較運算符 |
| 9 | <>?==?!= | 等于運算符 |
| 10 | =?%=?/=?//=?-=?+=?*=**= | 賦值運算符 |
| 11 | is?is not | 身份運算符 |
| 12 | in?not in | 成員運算符 |
| 13 | not?or?and | 邏輯運算符 |
?
轉載于:https://www.cnblogs.com/qing-chen/p/7161632.html
總結
以上是生活随笔為你收集整理的python数据类型和数据运算的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 时代风口下,东软集团软件业务怎么转型?
- 下一篇: 穿越火线的手机app