第五章 數字型別

2021-07-04 23:22:59 字數 4335 閱讀 7615

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的法則,無法真正刪除乙...