當前位置: 妍妍網 > 碼農

Python:數據型別轉換

2024-06-18碼農

數據型別 是程式語言中用於分類和定義變量所儲存數據的內容和行為的一種機制。它決定了數據在記憶體中的表示方式、允許的操作型別、以及數據的語意含義。數據型別可以是原始型別,如整數、浮點數、布爾值等,也可以是復合型別,如陣列、列表、類等。每種數據型別都有其特定的記憶體占用、可變性特征和操作集,它們是編程中實作數據結構和演算法的基礎,對程式的正確性、效率和可維護性起著關鍵作用。

  1. 「數位型別」 :包括整數( int ),浮點數( float ),以及復數( complex )。整數用於表示沒有小數部份的數位,浮點數可以表示有小數的數位,而復數則包含實部和虛部。

  2. 「序列型別」 :序列是有序的數據集合。列表( list )是一個有序且可變的序列,元組( tuple )是有序但不可變的序列,而範圍( range )則用於生成一個整數序列,常用於迴圈。

  3. 「集合型別」 :集合是無序且元素唯一的數據結構。集合( set )是可變的,而凍結集合( frozenset )是不可變的。

  4. 「對映型別」 :字典( dict )是一種透過鍵來索引的集合,鍵值對是無序的,但字典本身是可變的。

  5. 「布爾型別」 :布爾型別( bool )只有兩個值:True和False,用於邏輯運算。

  6. 「無型別型別」 NoneType 是一種特殊的數據型別,其值是 None ,表示沒有值。

  7. 「其他型別」 :字串( str )用於表示文本數據,字節( bytes )和字節陣列( bytearray )用於表示字節數據,而記憶體檢視( memoryview )則提供了一種存取記憶體中數據的方式。

數據型別分類 數據型別 描述
數位型別 int 整數
float 浮點數,用於表示小數
complex 復數,包含實部和虛部
序列型別 list 有序且可變的數據集合
tuple 有序但不可變的數據集合
range 一個整數序列,通常用於迴圈
集合型別 set 無序且無重復元素的集合
frozenset 與set類似,但不可變
對映型別 dict 鍵值對的集合,無序且可變
布爾型別 bool 邏輯值True或False
無型別型別 NoneType 表示無值的特殊型別,常量為None
其他型別 str 字串型別,用於表示文本
bytes 用於表示字節串的型別
bytearray 可變的字節序列
memoryview 用於存取記憶體中的數據片段

1.整型轉換為字串

number = 123
string_number = str(number) # "123"

2.字串轉換為整型和浮點數

string_number = "456"
number = int(string_number) # 456
float_number = float(string_number) # 456.0

3. 浮點數轉換成整型

float_number = 3.14
int_number = int(float_number) # 3

4.整型轉換成浮點數

int_number = 7
float_number = float(int_number) # 7.0

5. 數位轉換成布爾(0和1)

number = 0
bool_value = bool(number) # False

6.布爾轉換數位(True和False)

bool_value = True
int_value = int(bool_value) # 1

7.將列表轉換為元組

list_items = [123]
tuple_items = tuple(list_items) # (1, 2, 3)

8.將元組轉換為列表

tuple_items = (456)
list_items = list(tuple_items) # [4, 5, 6]

9.將列表轉換為字典

list_of_pairs = [(1'one'), (2'two')]
dictionary = dict(list_of_pairs) # {1: 'one', 2: 'two'}

10.集合與列表的轉換

list_items = [1, 2, 2, 3, 4, 4, 4]
set_items = set(list_items) # {1234}

11.字典鍵與值的轉換

my_dict = {'a'1'b'2'c'3}
keys_list = list(my_dict.keys()) # ['a', 'b', 'c']
values_list = list(my_dict.values()) # [1, 2, 3]

12.批次轉換數據型別

numbers = [1234]
float_numbers = list(map(float, numbers)) # [1.0, 2.0, 3.0, 4.0]