python裡面的資料是有類型的,雖然沒有顯示聲明。
在c++裡面
int a
float b
char c
都是顯然的,在源碼裡面就寫的明白的。
在python裡面,不需要聲明。
但是,他也是區分了類型的。
根據什麼區分?
根據他的值來區分
x=1
y="1"
z=1.0
print(type(x))
print(type(y))
print(type(z))
class int
class str
class float
封裝成了類
是類類型
x,y,z是用類聲明的對象
a="1"
b="2"
print(a+b)#12
print(int(a)+int(b))#3
print(a.isdigit())#True
第一個print
12
在console終端看上去是12
其實不是
是1和2
字元放在一起
這個是人容易混淆的東西。
12是數字12
12是字元1和字元2
看上去一樣的,
實際是不同的
計算機裡面,就經常有這樣的事情發生
你看上去一樣,
還要看看他的本質,是不是一樣。
他的源頭,是不是一樣。
看上去不一樣,
其實他的本質又一樣。
比如"a"和"b"
他們雖然看上去不同,
但其實都是用同一個類定義
class str
類型之間是可以轉換的。
不是隔絕的。
是可以轉換的!
是可以轉換的!
為什麼有的類型之間可以轉換?
有的類型之間又不可以轉換?
怎麼控制轉換?
這種轉換的實作方式又是如何?
比如
class str
class int
為什麼
int("123")
就把一個str對象變成了一個int對象,怎麼做到的?
代碼怎麼寫?
類型轉換是許多程式設計語言共同的話題!