Chuyển đổi kiểu trong chuỗi python thành int

Hàm tích hợp int[] của Python chuyển đổi một chuỗi thành một số nguyên. Điều này là bắt buộc khi bạn muốn thực hiện các phép toán không thành công trên một biến kiểu chuỗi. Python cũng cung cấp hàm tích hợp str[] thực hiện chuyển đổi kiểu dữ liệu ngược lại từ int sang string

Chúng ta sẽ bắt đầu bằng cách xem cách chuyển đổi kiểu dữ liệu hoạt động bằng cách sử dụng int[] và str[]. Sau đó, chúng tôi sẽ phân tích một ví dụ thực tế yêu cầu chuyển đổi một biến từ chuỗi thành số nguyên

chúng ta đi đây

Mục lục

Làm thế nào để bạn viết một số nguyên trong Python?

Khi chúng ta nói về số nguyên, chúng ta đề cập đến các số nguyên thập phân dương hoặc âm

Ví dụ về số nguyên là -1, -3, 0 5, 136

Trong Python, bạn có thể biểu diễn các số nguyên bằng hai kiểu dữ liệu. int và chuỗi

đại diện int

>>> number = 225
>>> type[number]

biểu diễn chuỗi

>>> number = "225"
>>> type[number]

Trong cả hai trường hợp, đầu ra của hàm tích hợp kiểu cho thấy biến đầu tiên là một int và biến thứ hai là một chuỗi [str]

Kiểm tra hướng dẫn này nếu bạn muốn tìm hiểu ý nghĩa của lớp trong Python

Bây giờ chúng ta sẽ học cách chuyển đổi một chuỗi thành một số nguyên và ngược lại. Quá trình chuyển đổi kiểu dữ liệu Python sang kiểu dữ liệu khác còn được gọi là ép kiểu

Chuyển đổi một chuỗi thành một int trong Python

Bây giờ chúng ta hãy tìm hiểu sâu hơn một chút…

Để chuyển đổi một chuỗi thành một int, bạn có thể sử dụng hàm tích hợp Python int[]

>>> number = "225"
>>> int[number]
225

Xác nhận rằng kiểu dữ liệu được trả về là một số nguyên

>>> type[int[number]]

Điều đó thật dễ dàng

Và đây là điều sẽ xảy ra nếu chúng ta cố gắng chuyển đổi thành một số nguyên một chuỗi không đại diện cho một số nguyên

>>> number = "not-a-number-225"
>>> type[int[number]]
Traceback [most recent call last]:
  File "", line 1, in 
ValueError: invalid literal for int[] with base 10: 'not-a-number-225'

Trình thông dịch Python đưa ra một ngoại lệ ValueError vì giá trị mà chúng ta đã truyền cho hàm int[] không phải là số base10 hợp lệ

Chuyển đổi một Int thành một chuỗi trong Python

Bây giờ, hãy để tôi chỉ cho bạn cách chuyển đổi một int thành một chuỗi

Để chuyển đổi một int thành một chuỗi, bạn có thể sử dụng hàm tích hợp sẵn str[] của Python.
>>> number = 225
>>> str[number]
'225'
Xác nhận rằng kiểu dữ liệu được trả về là một chuỗi.
>>> type[str[number]]

Nó đã làm việc

Và đây là những gì chúng tôi nhận được nếu chúng tôi cố gắng chuyển đổi thành một chuỗi một số nguyên không ở định dạng thập phân

Ví dụ: hãy thử chuyển đổi một số nhị phân thành một chuỗi

Để viết một số nhị phân bằng Python, bạn phải thêm tiền tố vào 0b

>>> number = 0b010
>>> str[number]
'2'
>>> number = 0b110
>>> str[number]
'6'
>>> number = 0b100
>>> str[number]
'4'

Thật tuyệt vời, hàm str[] đủ thông minh để chuyển đổi số nhị phân thành chuỗi ở định dạng thập phân

Khi nào bạn cần chuyển đổi chuỗi thành số nguyên trong Python?

Bạn đã học cách chuyển từ chuỗi sang số nguyên và ngược lại

Nhưng, tại sao bạn lại làm điều đó trong chương trình của mình?

Ví dụ, hãy tạo một chương trình lấy một số làm đầu vào và trả về bình phương của số đó

Để đọc số từ đầu vào của người dùng, chúng tôi sẽ sử dụng hàm Python input[]

Ghi chú. trong hướng dẫn này, chúng tôi đang sử dụng Python 3

________số 8

Hấp dẫn…

Đoạn mã này cho thấy rằng hàm input[] trả về một chuỗi ngay cả khi chúng ta đã cung cấp một số cho nó

Hàm input[] của Python, trong Python 3, nhận đầu vào, chuyển đổi nó thành một chuỗi và trả về chuỗi

Ok, bây giờ hãy xem tại sao việc chuyển đổi chuỗi này thành int lại quan trọng

Sau khi đọc số từ người dùng, hãy thử tính bình phương của số đó bằng toán tử số mũ Python

number = input["Insert a number: "]
square = number**2

Khi bạn thực thi mã này, bạn sẽ nhận được ngoại lệ TypeError sau

>>> number = "225"
>>> type[number]
0

Đó là bởi vì chúng tôi đang cố gắng tính bình phương của kiểu dữ liệu chuỗi thay vì kiểu int

Đó là lý do tại sao chúng ta phải chuyển đổi giá trị được trả về bởi hàm input[] thành int trước

Đây là cách chúng tôi làm điều đó…

>>> number = "225"
>>> type[number]
1

Chúng ta có

  • Đã sử dụng hàm tích hợp int[] để chuyển đổi đầu ra của hàm input[] thành một số nguyên
  • Sau đó, chúng tôi đã tính giá trị của biến bình phương bằng toán tử số mũ
  • Cuối cùng, chúng ta đã sử dụng phương thức string format[] để in một thông báo chứa giá trị của biến square
>>> number = "225"
>>> type[number]
2

Liệu nó có ý nghĩa?

Làm cách nào để bạn chuyển đổi một số Hex thành Int trong Python?

Trước khi hoàn thành hướng dẫn này, tôi muốn cho bạn thấy một thứ khác…

Một cách để chuyển đổi một chuỗi đại diện cho một số hex thành một int

Để viết một số hex bằng Python, bạn phải thêm tiền tố vào 0x. Hãy xem điều gì sẽ xảy ra khi chúng ta sử dụng hàm int[] để chuyển đổi chuỗi hex này thành int.
>>> number = "225"
>>> type[number]
3

Trình thông dịch Python đưa ra một ngoại lệ ValueError vì nó giả định rằng chuỗi mà chúng ta đang cố chuyển đổi thành int đại diện cho một số thập phân

Để nói với hàm int[] rằng chuỗi đại diện cho một số thập lục phân, chúng ta phải truyền đối số thứ hai cho hàm int[]. cơ sở. Trong trường hợp này giá trị của nó sẽ là 16

>>> number = "225"
>>> type[number]
4

Như bạn có thể thấy chuỗi đã được chuyển đổi chính xác thành giá trị thập phân của nó

Phần kết luận

Và bây giờ, hãy tóm tắt lại những gì chúng ta đã trình bày trong hướng dẫn Python này

  • Một số nguyên có thể được biểu diễn bằng Python bằng cách sử dụng các kiểu dữ liệu int hoặc string
  • Chuyển đổi một chuỗi thành một int bằng cách sử dụng
  • Chuyển đổi một int thành một chuỗi bằng cách sử dụng hàm tích hợp str[]
  • Sử dụng chuyển đổi từ chuỗi sang int trong một ví dụ thực tế
  • Chuyển đổi một chuỗi hex thành int

Bây giờ bạn có mọi thứ bạn cần để di chuyển giữa các kiểu dữ liệu int và string và để chuyển đổi đầu vào của người dùng thành đúng loại nếu được yêu cầu

Vì vậy, hãy thử và gửi email cho tôi theo địa chỉ hello@codefather. công nghệ nếu bạn có bất kỳ câu hỏi

Bài viết liên quan

Năng suất Python. Tạo trình tạo của bạn [Có ví dụ]

Làm cách nào để bạn lấy mọi phần tử khác từ danh sách Python?

8 điều cần biết để đếm các giá trị duy nhất trong danh sách bằng Python

Claudio Sabato

Tôi là Trưởng nhóm công nghệ, Kỹ sư phần mềm và Huấn luyện viên lập trình. Tôi muốn giúp bạn trong hành trình trở thành Nhà phát triển siêu hạng

Làm cách nào để chuyển đổi một chuỗi thành int?

Sử dụng số nguyên. parseInt[] để chuyển đổi chuỗi thành số nguyên . Nếu chuỗi không chứa số nguyên hợp lệ thì nó sẽ ném NumberFormatException.

Điều gì xảy ra nếu bạn chuyển đổi chuỗi thành int Python?

Trong khi chuyển đổi từ chuỗi thành int bạn có thể gặp ngoại lệ ValueError . Ngoại lệ này xảy ra nếu chuỗi bạn muốn chuyển đổi không đại diện cho bất kỳ số nào. Giả sử, bạn muốn chuyển đổi một số thập lục phân thành một số nguyên. Nhưng bạn đã không chuyển đối số base=16 trong hàm int[].

Làm cách nào để chuyển đổi char thành int trong Python?

ord[] . Hàm này được sử dụng để chuyển đổi một ký tự thành số nguyên.

%s trong int trong Python là gì?

%s có thể định dạng bất kỳ đối tượng python nào và in ra dưới dạng một chuỗi . Kết quả là %d và %s in giống nhau trong trường hợp này vì bạn đang chuyển đối tượng int/long. Giả sử nếu bạn cố chuyển đối tượng khác, %s sẽ in biểu diễn str[] và %d sẽ không thành công hoặc sẽ in giá trị được xác định bằng số của nó.

Chủ Đề