Chuyển đổi kiểu Python và Truyền kiểu (Với các ví dụ)

Trong bài viết này, bạn sẽ tìm hiểu về Chuyển đổi kiểu và cách sử dụng chuyển đổi kiểu.

Trước khi học Chuyển đổi kiểu trong Python, bạn nên có kiến ​​thức về Kiểu dữ liệu Python.

Loại chuyển đổi

Quá trình chuyển đổi giá trị của một kiểu dữ liệu (số nguyên, chuỗi, số float, v.v.) sang kiểu dữ liệu khác được gọi là chuyển đổi kiểu. Python có hai kiểu chuyển đổi kiểu.

  1. Chuyển đổi kiểu ngầm định
  2. Chuyển đổi loại rõ ràng

Chuyển đổi kiểu ngầm định

Trong chuyển đổi kiểu ngầm định, Python tự động chuyển đổi một kiểu dữ liệu sang kiểu dữ liệu khác. Quá trình này không cần bất kỳ sự tham gia nào của người dùng.

Hãy xem một ví dụ trong đó Python thúc đẩy việc chuyển đổi kiểu dữ liệu thấp hơn (số nguyên) sang kiểu dữ liệu cao hơn (float) để tránh mất dữ liệu.

Ví dụ 1: Chuyển đổi số nguyên thành float

 num_int = 123 num_flo = 1.23 num_new = num_int + num_flo print("datatype of num_int:",type(num_int)) print("datatype of num_flo:",type(num_flo)) print("Value of num_new:",num_new) print("datatype of num_new:",type(num_new))

Khi chúng ta chạy chương trình trên, kết quả đầu ra sẽ là:

 datatype of num_int: datatype of num_flo: Value of num_new: 124,23 datatype of num_new: 

Trong chương trình trên,

  • Chúng tôi thêm hai biến num_int và num_flo, lưu trữ giá trị trong num_new.
  • Chúng ta sẽ xem xét kiểu dữ liệu của cả ba đối tượng tương ứng.
  • Trong đầu ra, chúng ta có thể thấy kiểu dữ liệu của num_int là a integertrong khi kiểu dữ liệu của num_flo là a float.
  • Ngoài ra, chúng ta có thể thấy num_new có một floatkiểu dữ liệu bởi vì Python luôn chuyển đổi kiểu dữ liệu nhỏ hơn sang kiểu dữ liệu lớn hơn để tránh mất dữ liệu.

Bây giờ, chúng ta hãy thử thêm một chuỗi và một số nguyên, và xem cách Python xử lý nó.

Ví dụ 2: Bổ sung kiểu dữ liệu chuỗi (cao hơn) và kiểu dữ liệu số nguyên (thấp hơn)

 num_int = 123 num_str = "456" print("Data type of num_int:",type(num_int)) print("Data type of num_str:",type(num_str)) print(num_int+num_str)

Khi chúng ta chạy chương trình trên, kết quả đầu ra sẽ là:

 Kiểu dữ liệu của num_int: Kiểu dữ liệu của num_str: Traceback (lần gọi gần đây nhất): Tệp "python", dòng 7, trong TypeError: (các) loại toán hạng không được hỗ trợ cho +: 'int' và 'str'

Trong chương trình trên,

  • Chúng tôi thêm hai biến num_int và num_str.
  • Như chúng ta có thể thấy từ đầu ra, chúng tôi đã có TypeError. Python không thể sử dụng Chuyển đổi ngầm định trong các điều kiện như vậy.
  • Tuy nhiên, Python có một giải pháp cho những loại tình huống này được gọi là Chuyển đổi rõ ràng.

Chuyển đổi loại rõ ràng

Trong Chuyển đổi kiểu rõ ràng, người dùng chuyển đổi kiểu dữ liệu của một đối tượng thành kiểu dữ liệu bắt buộc. Chúng tôi sử dụng các chức năng được xác định trước như int(), float(), str(), vv để thực hiện chuyển đổi loại rõ ràng.

Kiểu chuyển đổi này còn được gọi là định kiểu vì người dùng truyền (thay đổi) kiểu dữ liệu của các đối tượng.

Cú pháp:

 (biểu hiện)

Đánh máy có thể được thực hiện bằng cách gán chức năng kiểu dữ liệu cần thiết cho biểu thức.

Ví dụ 3: Phép cộng chuỗi và số nguyên bằng cách sử dụng chuyển đổi rõ ràng

 num_int = 123 num_str = "456" print("Data type of num_int:",type(num_int)) print("Data type of num_str before Type Casting:",type(num_str)) num_str = int(num_str) print("Data type of num_str after Type Casting:",type(num_str)) num_sum = num_int + num_str print("Sum of num_int and num_str:",num_sum) print("Data type of the sum:",type(num_sum))

Khi chúng ta chạy chương trình trên, kết quả đầu ra sẽ là:

 Kiểu dữ liệu của num_int: Kiểu dữ liệu của num_str trước Kiểu Truyền: Kiểu dữ liệu của num_str sau Kiểu Truyền: Tổng của num_int và num_str: 579 Kiểu dữ liệu của tổng: 

Trong chương trình trên,

  • Chúng tôi thêm biến num_str và num_int.
  • Chúng tôi đã chuyển đổi num_str từ kiểu chuỗi (cao hơn) sang kiểu số nguyên (thấp hơn) bằng cách sử dụng int()hàm để thực hiện phép cộng.
  • Sau khi chuyển đổi num_str thành giá trị số nguyên, Python có thể thêm hai biến này.
  • Chúng tôi nhận giá trị num_sum và kiểu dữ liệu là một số nguyên.

Những điểm chính cần nhớ

  1. Chuyển đổi kiểu là việc chuyển đổi đối tượng từ kiểu dữ liệu này sang kiểu dữ liệu khác.
  2. Chuyển đổi kiểu ngầm định được trình thông dịch Python thực hiện tự động.
  3. Python tránh mất dữ liệu trong Chuyển đổi kiểu ngầm định.
  4. Chuyển đổi kiểu rõ ràng còn được gọi là Truyền kiểu, kiểu dữ liệu của các đối tượng được chuyển đổi bằng cách sử dụng các chức năng được xác định trước bởi người dùng.
  5. Trong Truyền kiểu, việc mất dữ liệu có thể xảy ra khi chúng tôi thực thi đối tượng vào một kiểu dữ liệu cụ thể.

thú vị bài viết...