2-數值常用操作
阿新 • • 發佈:2022-03-23
int(x) 將x轉換為一個十進位制整數
# 字串轉整數,字串只能由數字組成
s1 = "35"
data = int(s1)
print(data, type(data)) # 35 <class 'int'>
# 可以把其他進位制的數值字串轉換成十進位制整數
s2 = "0b1010"
# s2 = "1010" # 去掉0b也可以
data = int(s2, base=2)
print(data, type(data)) # 10 <class 'int'>
float(x) 將x轉換為一個浮點數
s1 = "3.5" data = float(s1) print(data, type(data)) # 3.5 <class 'float'>
abs(x) 是求絕對值 |x|
num1 = 100
data = abs(num1)
print(data) # 100
num2 = -10
data = abs(num2)
print(data) # 10
int 取整
num1 = 3.99999999999
data = int(num1)
print(data) # 3
num2 = 3.99999999999999999
data = int(num2)
print(data) # 4
ceil 向上取整
import math # 表示引入數學模組(python檔案) num0 = 3.1 data = math.ceil(num0) print(data) # 4 num0 = 3.9 data = math.ceil(num0) print(data) # 4 num0 = 3.0 data = math.ceil(num0) print(data) # 3
floor 向下取整(地板取整)
import math
num0 = 3.1
data = math.floor(num0)
print(data) # 3
num0 = 3.9
data = math.floor(num0)
print(data) # 3
num0 = 3.0
data = math.floor(num0)
print(data) # 3
round(x) 四捨五入取整
num0 = 3.1
data = round(num0)
print(data) # 3
num0 = 3.9 data = round(num0) print(data) # 4
num0 = 3.5
data = round(num0)
print(data) # 4
max 取最大值
ret = max(10, 12, 15, 20)
print(ret) # 20
min 取最小值
ret = min(10, 12, 15, 20)
print(ret) # 10
max和min 也可以從字串中提取最大值,類似字串的比較,是編碼位置的比較,原因是max和min內部就是使用比較運算子來處理的。
# 取最大值
ret = max("A", "a", "c", "C")
print(ret) # c
# 取最小值
ret = min("A", "a", "c", "C")
print(ret) # A
提取一個數字的整數部分和小數部分
import math
ret = math.modf(3.1415) #(浮點數部分, 整數部分)
print(ret) # (0.14150000000000018, 3.0)
pow 冪運算
print(pow(2,3)) # 8 相當於2**3次方
sqrt 平方根
import math
data = math.sqrt(4)
print(data) # 2.0
隨機數
import random
# 生成一個0~1之間的隨機實數,範圍是[0,1),不包含1
data = random.random()
print(data)
# 生成一個指定範圍[a,b]的隨機整數,包含a,b
data = random.randint(1,2)
print(data)
# choice 隨機抽取一個成員
data = ["A", "B", "C"]
ret = random.choice(data)
print(ret)
# 隨機打亂序列的成員排列順序,這個shuffle在很多程式語言裡面都有,是基於洗牌演算法實現的。
data = ["A", "B", "C"]
random.shuffle(data) # 注意:此處不需要寫等號了
print(data)