Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Ép kiểu tường minh (Explicit Type Casting) trong ngôn ngữ Python

Tất cả chúng ta đều có thể khai báo và làm việc với các kiểu dữ liệu. Có bao giờ chúng ta tự hỏi về việc chuyển đổi giữa chúng? Trong bài viết này, chúng ta sẽ tìm hiểu về cách chuyển đổi các kiểu dữ liệu này sử dụng các hàm tích hợp sẵn trong Python, còn gọi là Type Casting (Ép kiểu). Ép kiểu có hai loại: Implicit (ngầm) & Explicit (tường minh). Trong module này, chúng ta sẽ thảo luận về Explicit type casting (Ép kiểu tường minh) בלבד.

Bây giờ hãy xem một số chuyển đổi kiểu cơ bản:

Chuyển đổi kiểu Integer trong Python

Hàm int() cho phép chuyển đổi bất kỳ kiểu dữ liệu nào sang integer. Nó chấp nhận đúng hai tham số: Base và Number, trong đó Base chỉ cơ số của giá trị integer (nhị phân[2], bát phân[8], thập lục phân[16]).

Chuyển đổi kiểu Float trong Python

Hàm float() cho phép chuyển đổi bất kỳ kiểu dữ liệu nào sang số thực dấu chấm động. Nó chấp nhận đúng một tham số: giá trị kiểu dữ liệu cần chuyển đổi.

Ví dụ

# Ép kiểu
value = "0010110"
# int cơ số 2
p = int(value, 2)
print("Integer cơ số 2:", p)
# Cơ số mặc định
d = int(value)
print("Integer cơ số mặc định:", d)
# Float
e = float(value)
print("Float tương ứng:", e)

Kết quả

Integer cơ số 2: 22
Integer cơ số mặc định: 10110
Float tương ứng: 10110.0

Trong code trên, chúng ta cũng đã chuyển đổi integer với cơ số trong Python.

Chuyển đổi kiểu Tuple trong Python

Hàm tuple() cho phép chuyển đổi sang tuple. Nó chấp nhận đúng một tham số: chuỗi hoặc list.

Chuyển đổi kiểu List trong Python

Hàm list() cho phép chuyển đổi bất kỳ kiểu dữ liệu nào sang kiểu list. Nó chấp nhận đúng một tham số.

Chuyển đổi kiểu Dictionary trong Python

Hàm dict() dùng để chuyển tuple cấp (key, value) thành dictionary. Key phải duy nhất, nếu không giá trị trùng lặp bị ghi đè.

Ví dụ

# Ép kiểu
str_inp = 'Tutorialspoint'
# Chuyển sang list
j = list(str_inp)
print("String sang list:")
print(j)
# Chuyển sang tuple
i = tuple(str_inp)
print("String sang tuple:")
print(i)
# Tuple lồng nhau
tup_inp = (('Tutorials', 0), ('Point', 1))
# Chuyển sang dictionary
c = dict(tup_inp)
print("Tuple sang dictionary:", c)
# List lồng nhau
list_inp = [['Tutorials', 0], ['Point', 1]]
# Chuyển sang dictionary
d = dict(list_inp)
print("List sang dictionary:", d)

Kết quả

String sang list: ['T', 'u', 't', 'o', 'r', 'i', 'a', 'l', 's', 'p', 'o', 'i', 'n', 't']
String sang tuple: ('T', 'u', 't', 'o', 'r', 'i', 'a', 'l', 's', 'p', 'o', 'i', 'n', 't')
Tuple sang dictionary: {'Tutorials': 0, 'Point': 1}
List sang dictionary: {'Tutorials': 0, 'Point': 1}

Chuyển đổi kiểu String trong Python

Hàm str() dùng để chuyển integer hoặc float thành string. Nó chấp nhận đúng một đối số.

Chuyển đổi kiểu Ascii chr() & ord() trong Python

chr() - Hàm này dùng để chuyển kiểu integer sang kiểu ký tự.

ord() - Hàm này dùng để chuyển kiểu ký tự sang kiểu integer.

Ví dụ

# Ép kiểu
char_inp = 'T'
# Chuyển ký tự sang giá trị integer tương ứng
print("Giá trị ASCII tương ứng:", ord(char_inp))
int_inp = 92
# Chuyển integer sang ký tự ASCII tương ứng
print("Ký tự ASCII tương ứng:", chr(int_inp))
# Giá trị integer và float
inp_i = 231
inp_f = 78.9
# Tương đương string
print("String tương đương", str(inp_i))
print("String tương đương", str(inp_f))

Kết quả

Giá trị ASCII tương ứng: 84
Ký tự ASCII tương ứng: \
String tương đương 231
String tương đương 78.9

Kết luận

Trong bài viết này, chúng ta đã tìm hiểu về ép kiểu tường minh trong Python 3.x hoặc các phiên bản trước đó.