python表示式操作符
操作符 描述
yield 生成器函式傳送協議
lambda args: expression 生成匿名函式名
x if y else z 三元選擇表示式
x or y 邏輯或,x為假執行y
x and y 邏輯與
not x 邏輯非
x in y, x not in y 成員關係(可迭代物件集合)
x is y, x is not y 物件比較
x < y, x <= y, x > y, x >= y, x == y, x != y 大小比較
| 位或
^ 位異或
& 位與
x << y, x >> y 左右移位y位
+, -, *, / 加減乘除
// 小數除法
% 求模
~** 冪運算
x[i] 索引
x[s:j:k] 分片
x( ... ) 呼叫(函式,方法,類等)
x.attr 屬性引用
( ... ) 元祖,表示式,生成器表示式
[ ... ] 列表,列表解析
字典,set,set和字典解析
>>> oct(255)
'0377'
>>> hex(255)
'0xff'
>>> bin(255)
'0b11111111'
>>> int('377',8)
255>>> int('ff',16)
255>>> int('11111111',2)
255
>>> abs(-1)
1>>> min(4,3,1,2)
1>>> max(4,3,1,2)
4>>> sum((1,2))
3
>>>
import random
>>> random.random() # 產生0-1的隨機數
0.30664199990073959
>>> random.random()
0.068441346426145189
>>>
>>> random.randint(1,6)
6>>> random.randint(1,6)
5>>> random.randint(1,6)
5>>> random.randint(1,6)
5>>> random.randint(1,6)
2>>> random.randint(1,6)
6>>> random.choice(['fengq','xiongw','maos','wutq','gaoc'])
'fengq'
>>> random.choice(['fengq','xiongw','maos','wutq','gaoc'])
'maos'
>>> random.choice(['fengq','xiongw','maos','wutq','gaoc'])
'gaoc'
>>> random.choice(['fengq','xiongw','maos','wutq','gaoc'])
'wutq'
>>> random.choice(['fengq','xiongw','maos','wutq','gaoc'])
'wutq'
>>> print(0.1+0.1+0.1 - 0.3) # 浮點數缺乏精確性
5.55111512313e-17
#使用小數物件改正結果。通過decimal模組的decimal建構函式建立乙個小數物件。
>>>
from decimal import decimal
>>> decimal('0.1') + decimal('0.1') + decimal('0.1')
decimal('0.3')
>>> decimal('0.1') + decimal('0.1') + decimal('0.1') - decimal('0.3')
decimal('0.0')
#decimal其他工具設定小數數值精度
>>>
import decimal
>>> decimal.decimal(1) / decimal.decimal(7)
decimal('0.1428571428571428571428571429')
>>> decimal.getcontext().prec = 4
>>> decimal.decimal(1) / decimal.decimal(7)
decimal('0.1429')
>>>
19 + 1.33
20.329999999999998
>>> decimal.decimal(str(19 + 1.33))
decimal('20.33')
集合>>> y = set('bdxyz')
>>> x = set('abcdef')
>>> x
set(['a', 'c', 'b', 'e', 'd', 'f'])
>>>
>>>
'e'in x
true
>>>
'e'in y
false
>>> x - y
set(['a', 'c', 'e', 'f'])
>>> x | y
set(['a', 'c', 'b', 'e', 'd', 'f', 'y', 'x', 'z'])
>>> x & y
set(['b', 'd'])
>>> x ^ y
set(['a', 'c', 'e', 'f', 'y', 'x', 'z'])
>>> x > y, x < y
(false, false)
>>> z = x.intersection(y) #就像x & y
>>> z
set(['b', 'd'])
>>> z.add('spam')
>>> z
set(['b', 'd', 'spam'])
>>> z.update(set(['x','y']))
>>> z
set(['y', 'x', 'b', 'd', 'spam'])
>>> z.remove('b')
>>> z
set(['y', 'x', 'd', 'spam'])
>>>
for i in set('abc'):
... print(i)
... ac
b
截斷小數部分
int(n)
math.trunc(n)
整數轉小數
floot(n)
第五章 數字
整形 長整形 布林型 雙精度浮點型 十進位制浮點型和複數。在賦值的同時,被建立。例子a 1 print a結果1例子a 1 print a,id a a 32 print a,id a 結果1 49373672 32 49372928例子a 32 print a,id a del a print a...
第五章 數字
python的數字型別 在python中,數字並不是乙個真正的物件型別,而是乙個類似型別的分類。python數字型別的完整工具包括 1 數字常量 整數和浮點數常量。python2.6中的整數 一般整數和長整數。python3.0中的整數 乙個單獨的型別。十六進製制數 八進位制和二進位制常量。複數。編...
第五章 數字
python支援多種數字型別 整型 長整型 布林型 雙精度浮點型 十進位制浮點型和複數 數字提供了標量貯存和直接訪問,不可更改。變更數字的值會生成新的物件 給變數更新值的時候,並不是更改了物件 數字是不可更改的物件 而是新建了乙個物件,將這個物件的值引用給變數 按照python的法則,無法真正刪除乙...