Python基礎教學之Python 數位(Number)

2020-08-10 00:29:32

目錄

Python 數位(Number)

int

bool

complex

複數的模

數值運算

數值型別範例

總結


Python 數位(Number)

數位數據型別用於儲存數位。
他們是不可改變的數據型別,這意味着改變數位數據型別會分配一個新的物件。

Python3 支援 int、float、bool、complex(複數)。

int

當你指定一個值時,Number 物件就會被建立:

var1 = 1
var2 = 10
print(var1, var2)

當然,您也可以使用 del 語句刪除一些物件的參照。

del 語句的用法是:

del var1
# 在Python 3裡,只有一種整數型別 int,表示爲長整型,沒有 python2 中的 Long。
# 
# 像大多數語言一樣,數值型別的賦值和計算都是很直觀的。
# 
# 內建的 type() 函數可以用來查詢變數所指的物件型別。
a, b, c, d = 20, 5.5, True, 4 + 3j
print(a, b, c, d)
print(type(a), type(b), type(c), type(d))

Run:

20 5.5 True (4+3j)
<class 'int'> <class 'float'> <class 'bool'> <class 'complex'>
# 此外還可以用 isinstance(其是這點和 Java 是一樣的) 來判斷:
aa = 111
print(aa)
print(isinstance(aa, int))
print("當寫到這個地方的時候,如果你是用的 pycharm,可以洗碗方法之後直接點哦")

Run:

111
True
當寫到這個地方的時候,如果你是用的 pycharm,可以洗碗方法之後直接點哦

isinstance 和 type 的區別在於:

  • type()不會認爲子類是一種父類別型別。
  • isinstance()會認爲子類是一種父類別型別。
# 定義類(同樣,類名首字母要大寫) 父親
class Father:
    pass


# 定義類 兒子
class Son(Father):
    pass


# 剛開始我用+好,居然行不通,說 str 是 只能將str(而不是「 bool」)連線到str,好吧,那我只能分開列印,畢竟我也是剛學
print("範例化 a 之後是否屬於 a 類:", isinstance(Father(), Father))
print("type 判斷 A()是否屬於)", type(Father()) == Father)
print("我認我的兒子", isinstance(Son(), Father))
print("我不認", type(Son()) == Father)

bool

# 注意:
# 在 Python2 中是沒有布爾型的,它用數位 0 表示 False,用 1 表示 True。
# 到 Python3 中,把 True 和 False 定義成關鍵字了,但它們的值還是 1 和 0,它們可以和數位相加。
# 比如:print(1 + True)

complex

Python還支援複數,複數由實數部分和虛數部分構成,可以用a + bj,或者complex(a,b)表示, 複數的實部a和虛部b都是浮點型。

在這裏咱們一起復習複習高中知識點:(以下內容來來源於百度百科)

我們把形如z=a+bi(a,b均爲實數)的數稱爲複數,其中a稱爲實部,b稱爲虛部,i稱爲虛數單位。當z的虛部等於零時,常稱z爲實數;當z的虛部不等於零時,實部等於零時,常稱z爲純虛數。複數域是實數域的代數閉包,即任何復係數多項式在複數域中總有根。

複數的模

將複數的實部與虛部的平方和的正的平方根的值稱爲該複數的模,記作∣z∣.

即對於複數z=a+bi的模,爲,∣z∣ = 根號下,a方+b 方

數值運算

# 數值運算
print("以下是數值運算------------------------")
print("這是加法", 1 + 1)
print("這是減法", 100 - 1)
print("這是乘法", 3 * 7)
print("這是除法,得到一個浮點數", 2 / 4)
print("這是除法,得到一個整數", 2 // 4)
print("這是取餘", 17 % 3)
print("這是乘方", 2 ** 10)

Run:

以下是數值運算------------------------
這是加法 2
這是減法 99
這是乘法 21
這是除法,得到一個浮點數 0.5
這是除法,得到一個整數 0
這是取餘 2
這是乘方 1024

注意:

  • 1、Python可以同時爲多個變數賦值,如a, b = 1, 2。
  • 2、一個變數可以通過賦值指向不同類型的物件。
  • 3、數值的除法包含兩個運算子:/ 返回一個浮點數,// 返回一個整數。
  • 4、在混合計算時,Python會把整型轉換成爲浮點數。

數值型別範例

可能是考點的各種形態的數值型別

  • int型:正數負數,八進制0開頭,十六進制0x開頭

  • float型:小數點的前後都可以沒有數位,自動補全

  • complex型:虛部的J可大寫可小寫<考點>

總結

強型別語言:

一種總是強制型別定義的語言。

Java 和 Python 是強制型別定義的。

-----以下栗子這裏只是說明,僅適用於 Python

您有一個整數,如果不明確地進行轉換 ,不能將把它當成一個字串。

強型別:不允許不同類型相加。例如:整形+字串會報型別錯誤。偏向於不容忍隱式型別轉換。

ps:

(在這裏多說一下java 字串並不是數據型別,java 中String 是個物件,是參照型別 。

基礎型別與參照型別的區別是,基礎型別只表示簡單的字元或數位,參照型別可以是任何複雜的數據結構 ,基本型別僅表示簡單的數據型別,參照型別可以表示覆雜的數據型別,還可以操作這種數據型別的行爲 。

java虛擬機器處理基礎型別與參照型別的方式是不一樣的,對於基本型別,java虛擬機器會爲其分配數據型別實際佔用的記憶體空間,而對於參照型別變數,他僅僅是一個指向堆區中某個範例的指針。)