Android

Cách chuyển đổi chuỗi thành số nguyên trong python

Python Exercise #1

Python Exercise #1

Mục lục:

Anonim

Tất cả các kiểu dữ liệu trong Python, bao gồm số nguyên và chuỗi, là các đối tượng. Thông thường khi viết mã Python, bạn sẽ cần chuyển đổi một loại dữ liệu sang loại khác. Ví dụ, để thực hiện một phép toán trên một số được biểu diễn dưới dạng một chuỗi, nó cần phải được chuyển đổi thành một số nguyên.

Trong hướng dẫn này, chúng tôi sẽ chỉ cho bạn cách chuyển đổi chuỗi Python thành số nguyên.

Hàm int()

Hàm int() tích hợp trả về một đối tượng số nguyên thập phân từ một số hoặc chuỗi đã cho. Nó có dạng sau:

int(x, base=10)

Hàm `chấp nhận hai đối số:

  • x - Chuỗi hoặc số được chuyển đổi thành một số nguyên. base - Nó đại diện cho hệ thống số của đối số đầu tiên. Giá trị của nó có thể là 0 và 2 trận36. Nếu không có cơ sở nào được đưa ra, mặc định là 10 (số nguyên thập phân).

Thông thường, các số nguyên được thể hiện bằng ký hiệu thập lục phân (cơ số 16), thập phân (cơ sở 10), bát phân (cơ sở 8) hoặc ký hiệu nhị phân (cơ sở 2).

Nếu đối số đã cho không thể được biểu diễn dưới dạng một số nguyên, hàm sẽ ném ngoại lệ ValueError .

Chuyển đổi chuỗi Python thành Integer

Trong Python, 'chuỗi' là danh sách các ký tự được khai báo bằng dấu ngoặc đơn ( ' ), double ( " ) hoặc ba dấu ngoặc kép ( """ ).

Nếu một biến chỉ chứa các số được khai báo bằng dấu ngoặc kép, kiểu dữ liệu của nó được đặt thành Chuỗi. Hãy xem xét ví dụ sau:

days = "23" type(days)

Hàm type() cho chúng ta thấy rằng days là một đối tượng String.

Hãy thử thực hiện một phép toán trên biến:

print(days+5)

Python sẽ đưa ra lỗi ngoại lệ TypeError vì chúng tôi không thể thực hiện phép tính bổ sung với chuỗi và số nguyên:

Traceback (most recent call last): File " ", line 1, in TypeError: cannot concatenate 'str' and 'int' objects Traceback (most recent call last): File " ", line 1, in TypeError: cannot concatenate 'str' and 'int' objects Traceback (most recent call last): File " ", line 1, in TypeError: cannot concatenate 'str' and 'int' objects

Để chuyển đổi một chuỗi đại diện của một số nguyên thập phân thành int , chuyển chuỗi sang hàm int() , trả về một số nguyên thập phân:

days = "23" days_int = int(days) type(days_int)

print(days_int+5)

28

Nếu số bao gồm dấu phẩy, đánh dấu hàng nghìn, hàng triệu, v.v., bạn cần xóa dấu phẩy trước khi chuyển số cho hàm int() :

total = "1, 000, 000" int(total.replace(", ", ""))

1000000

Khi chuyển đổi các chuỗi đại diện cho số nguyên trong các hệ thống số khác nhau, hãy đảm bảo bạn sử dụng đúng base .

Ví dụ, trong hệ thập lục phân, số 54732 được biểu diễn dưới dạng D5CF . Để chuyển đổi nó thành số nguyên thập phân, bạn cần sử dụng cơ sở 16:

int("D5CF", 16)

54735

Nếu bạn chuyển chuỗi D5CF cho hàm int() mà không đặt cơ sở, nó sẽ ném ngoại lệ ValueError :

int("D5CF")

Traceback (most recent call last): File " ", line 1, in ValueError: invalid literal for int() with base 10: 'D5CF' Traceback (most recent call last): File " ", line 1, in ValueError: invalid literal for int() with base 10: 'D5CF' Traceback (most recent call last): File " ", line 1, in ValueError: invalid literal for int() with base 10: 'D5CF'

Phần kết luận

Trong Python, bạn có thể chuyển đổi một chuỗi thành một số nguyên bằng hàm int() .

trăn