4.1Python資料型別(1)之數值型別
阿新 • • 發佈:2018-12-26
目錄:
1.資料型別的表現形式:
2.資料進位制的轉換:
3.資料的常規操作:
(一).資料型別的表現形式:
(1)整數型別:
# 二進位制:
a = 0b0110
print("二進位制:", a)
# 十進位制:
b = 134
print("十進位制:", b)
# 八進位制:
c = 0o17
print("八進位制:", c)
# 十六進位制:
d = 0x1fab
print("十六進位制:", d)
----------------輸出---------------
二進位制: 6
十進位制: 134
八進位制: 15
十六進位制: 8107
(2)浮點型:
# 浮點型:
num = 168.20000
print("浮點數:", num)
num2 = 1.682e2
print("科學計數法", num2)
-----------------輸出-------------
浮點數: 168.2
科學計數法 168.2
(3)複數型別:
# 複數:
nums = 1+1j
print("複數:", nums)
----------------輸出--------------
複數: (1+1j)
(二).資料進位制的轉換:
(1)數值的表示原理:
10進位制的數值表示原理如下圖,其他進位制也是如此
(2)進位制的轉換原理:
(3)具體的數值轉換:
# 數值進位制的轉換函式
num = 18
print("18的二進位制:", bin(num)) #轉化為二進位制函式
print("18的八進位制:", oct(num)) #轉化為八進位制函式
print("18的十六進位制:", hex(num)) #轉化為十六進位制函式
---------------輸出------------------
18的二進位制: 0b10010
18的八進位制: 0o22
18的十六進位制: 0x12
(三).資料的常規操作:
1.內建函式:
# 內建函式 a = -24 b = 0 c = 12 d = 1.4567 print("絕對值:", abs(a)) # 求絕對值 print("最大值:", max(a, b, c)) print("最小值:", min(a, b, c)) print("四捨五入:", round(d, 2)) # round(d, n) n表示保留幾位小數 print("冪運算:", pow(2, 3)) # 2^3=8 相當於 2**3 ---------------輸出------------------ 絕對值: 24 最大值: 12 最小值: -24 四捨五入: 1.46 冪運算: 8
2.math模組函式:
import math
n = 3.6
print("上取整:", math.ceil(n))
print("下取整:", math.floor(n))
print("開平發:", math.sqrt(9))
print("求對數:", math.log(100, 10))
---------------輸出------------------
上取整: 4
下取整: 3
開平發: 3.0
求對數: 2.0
3.三角函式:
注意:sin(x)中的x是弧度制,而不是角度。
角度轉化為弧度的公式是:(x/180)*pi
更多的函式可參考math模組。
import math
# 數字常量
print("圓周率:", math.pi)
# 角度單位的轉換:
print("pi/6的角度是:", math.degrees(30/180*math.pi)) # 弧度 -> 角度
print("30角度對應的弧度:", math.radians(30)) # 角度 -> 弧度
# 正弦函式
print("正弦函式", math.sin(30/180*math.pi))
# 餘弦函式
print("餘弦函式", math.cos(60/180*math.pi))
# 正切函式
print("正切函式", math.tan(30/180*math.pi))
------------------輸出-------------------
圓周率: 3.141592653589793
pi/6的角度是: 29.999999999999996
30角度對應的弧度: 0.5235987755982988
正弦函式 0.49999999999999994
餘弦函式 0.5000000000000001
正切函式 0.5773502691896257
4.隨機數:random模組
import random
# random()--[0, 1)範圍之內的隨機小數
print(random.random())
# choices(seq)--從一個序列中, 隨機挑選一個數值
li = [1, 2, 6, 7, 4, 9]
print(random.choices(li))
# uniform(x, y)--[x, y]範圍之內的隨機小數
print(random.uniform(5, 9))
# randint(x, y)--[x, y]範圍之內的隨機整數
print(random.randint(4, 7))
# randrange(start, stop=None, step=1)給定區間內的一隨機整數
# 這裡有一個步長,可隨機輸出奇偶數
print(random.randrange(1, 9, 2))
------------------輸出-------------------
0.9581884346177018
[7]
6.079284807552682
5
7
本小節結束!
我是張一根,一個機械專業的大學生,一個在讀本科的計算機愛好者,期盼和你一起交流計算機的知識,讓我們在這個大時代裡一起進步。