Hướng dẫn how do i convert a string to numeric data in python? - làm cách nào để chuyển đổi một chuỗi thành dữ liệu số trong python?

Giới thiệu

Python cho phép bạn chuyển đổi chuỗi, số nguyên và nổi thay thế thay thế theo một vài cách khác nhau. Cách đơn giản nhất để làm điều này là sử dụng các hàm

>>> integerFirst = 23
>>> floatFirst = 23.23
>>> complextFirst = 1 + 23j
7,
>>> integerFirst = 23
>>> floatFirst = 23.23
>>> complextFirst = 1 + 23j
8 và
>>> integerFirst = 23
>>> floatFirst = 23.23
>>> complextFirst = 1 + 23j
9 cơ bản. Trên hết, có một vài cách khác là tốt.

Trước khi chúng ta chuyển đổi các chuỗi thành các số và chuyển đổi số thành các chuỗi, trước tiên chúng ta hãy xem một chút về cách các chuỗi và số được thể hiện trong Python.

Lưu ý: Để đơn giản là chạy và hiển thị các ví dụ này, chúng tôi sẽ sử dụng trình thông dịch Python.: For simplicity of running and showing these examples we'll be using the Python interpreter.

Dây

Chuỗi chữ trong python được tuyên bố bằng cách xung quanh một ký tự có dấu hiệu gấp đôi ["] hoặc dấu ngoặc đơn [']. một ký tự duy nhất từ ​​chuỗi.

Ví dụ: chúng ta có thể truy cập các ký tự riêng lẻ của các chuỗi này bằng cách chỉ định một chỉ mục:

>>> stringFirst = "Hello World!"
>>> stringSecond = 'Again!'
>>> stringFirst[3]
'l'
>>> stringSecond[3]
'i'

sô học

Một số trong Python có thể là một

>>> x = "23"
>>> y = "20"
>>> z = int[x] - int[y]
>>> z
3
0,
>>> x = "23"
>>> y = "20"
>>> z = int[x] - int[y]
>>> z
3
1 hoặc
>>> x = "23"
>>> y = "20"
>>> z = int[x] - int[y]
>>> z
3
2.

Số nguyên có thể là một số tổng thể tích cực hoặc âm. Kể từ Python 3, các số nguyên không giới hạn và thực tế có thể giữ bất kỳ số nào. Trước Python 3, ranh giới trên cùng là 231-1 cho các thời gian 32 bit và 263-1 cho thời gian chạy 64 bit.

Phao cũng có chiều dài không giới hạn, nhưng một số điểm nổi phải chứa một điểm thập phân.

Các số phức tạp phải có một phần tưởng tượng, được biểu thị bằng cách sử dụng

>>> x = "23"
>>> y = "20"
>>> z = int[x] - int[y]
>>> z
3
3:

>>> integerFirst = 23
>>> floatFirst = 23.23
>>> complextFirst = 1 + 23j

Chuyển đổi chuỗi thành số

Sử dụng hàm int []

Nếu bạn muốn chuyển đổi một chuỗi thành một số nguyên, cách đơn giản nhất sẽ là sử dụng hàm

>>> integerFirst = 23
>>> floatFirst = 23.23
>>> complextFirst = 1 + 23j
8. Chỉ cần chuyển chuỗi như một đối số:

>>> x = "23"
>>> y = "20"
>>> z = int[x] - int[y]
>>> z
3

Điều này hoạt động như mong đợi khi bạn chuyển một biểu diễn chuỗi của số nguyên sang

>>> integerFirst = 23
>>> floatFirst = 23.23
>>> complextFirst = 1 + 23j
8, nhưng bạn sẽ gặp rắc rối nếu chuỗi bạn vượt qua không chứa giá trị số nguyên. Nếu có bất kỳ ký tự không số nào trong chuỗi của bạn thì
>>> integerFirst = 23
>>> floatFirst = 23.23
>>> complextFirst = 1 + 23j
8 sẽ tăng một ngoại lệ:

>>> x = "23a"
>>> z = int[x]
Traceback [most recent call last]:
  File "", line 1, in 
ValueError: invalid literal for int[] with base 10: '23a'

Ngoại lệ tương tự này thậm chí sẽ được nâng lên nếu một chuỗi float hợp lệ được thông qua:

>>> x = "23.4"
>>> z = int[x]
Traceback [most recent call last]:
  File "", line 1, in 
ValueError: invalid literal for int[] with base 10: '23.4'

Hàm

>>> integerFirst = 23
>>> floatFirst = 23.23
>>> complextFirst = 1 + 23j
8 có một tính năng hữu ích khác hơn là chỉ chuyển đổi chuỗi thành số nguyên, nó cũng cho phép bạn chuyển đổi số từ bất kỳ cơ sở nào sang số nguyên cơ sở 10. Ví dụ: chúng ta có thể chuyển đổi chuỗi nhị phân sau thành số nguyên cơ sở 10 bằng tham số
>>> x = "23"
>>> y = "20"
>>> z = int[x] - int[y]
>>> z
3
8:

>>> int['1101100', base=2]
108

Điều tương tự cũng có thể được thực hiện cho bất kỳ cơ sở nào khác, như HexAdecimal [cơ sở 16]:

>>> int['6C', base=16]
108

Sử dụng hàm float []

Chuyển đổi nghĩa đen của chuỗi thành phao được thực hiện thông qua hàm

>>> integerFirst = 23
>>> floatFirst = 23.23
>>> complextFirst = 1 + 23j
9:

>>> x = "23.23"
>>> y = "23.00"
>>> z = float[x] - float[y]
>>> z
0.23000000000000043

Lưu ý rằng giá trị kết quả không hoàn toàn chính xác, vì nó chỉ là

>>> x = "23a"
>>> z = int[x]
Traceback [most recent call last]:
  File "", line 1, in 
ValueError: invalid literal for int[] with base 10: '23a'
0. Điều này có liên quan đến các vấn đề toán học nổi thay vì chuyển đổi từ chuỗi sang số.

Hàm

>>> integerFirst = 23
>>> floatFirst = 23.23
>>> complextFirst = 1 + 23j
9 cung cấp tính linh hoạt hơn một chút so với hàm
>>> integerFirst = 23
>>> floatFirst = 23.23
>>> complextFirst = 1 + 23j
8 vì nó có thể phân tích và chuyển đổi cả phao và số nguyên::

Kiểm tra hướng dẫn thực hành của chúng tôi, thực tế để học Git, với các thực hành tốt nhất, các tiêu chuẩn được công nghiệp chấp nhận và bao gồm bảng gian lận. Ngừng các lệnh git googling và thực sự tìm hiểu nó!

>>> x = "23"
>>> y = "20"
>>> z = float[x] - float[y]
>>> z
3.0

Không giống như

>>> integerFirst = 23
>>> floatFirst = 23.23
>>> complextFirst = 1 + 23j
8,
>>> integerFirst = 23
>>> floatFirst = 23.23
>>> complextFirst = 1 + 23j
9 không tăng ngoại lệ khi nhận được giá trị số không phát động.

Tuy nhiên, nó sẽ tăng một ngoại lệ nếu một giá trị không phải là số lượng được truyền cho nó:

>>> x = "23a"
>>> z = float[x]
Traceback [most recent call last]:
  File "", line 1, in 
ValueError: could not convert string to float: '23a'

Mặc dù

>>> integerFirst = 23
>>> floatFirst = 23.23
>>> complextFirst = 1 + 23j
9 không có khả năng chuyển đổi các số không cơ sở 10 như
>>> integerFirst = 23
>>> floatFirst = 23.23
>>> complextFirst = 1 + 23j
8, nhưng nó có khả năng chuyển đổi các số được biểu thị trong ký hiệu khoa học [còn gọi là ghi chú điện tử]:

>>> integerFirst = 23
>>> floatFirst = 23.23
>>> complextFirst = 1 + 23j
0

Sử dụng hàm phức tạp []

Chuyển đổi nghĩa đen của chuỗi thành các số phức tạp được thực hiện thông qua hàm

>>> x = "23a"
>>> z = int[x]
Traceback [most recent call last]:
  File "", line 1, in 
ValueError: invalid literal for int[] with base 10: '23a'
7. Để làm như vậy, chuỗi phải tuân theo định dạng cụ thể. Đặc biệt, nó phải được định dạng mà không có khoảng trắng xung quanh các toán tử
>>> x = "23a"
>>> z = int[x]
Traceback [most recent call last]:
  File "", line 1, in 
ValueError: invalid literal for int[] with base 10: '23a'
8 hoặc
>>> x = "23a"
>>> z = int[x]
Traceback [most recent call last]:
  File "", line 1, in 
ValueError: invalid literal for int[] with base 10: '23a'
9:

>>> integerFirst = 23
>>> floatFirst = 23.23
>>> complextFirst = 1 + 23j
1

Có bất kỳ không gian bổ sung nào giữa các toán tử

>>> x = "23a"
>>> z = int[x]
Traceback [most recent call last]:
  File "", line 1, in 
ValueError: invalid literal for int[] with base 10: '23a'
8 hoặc
>>> x = "23a"
>>> z = int[x]
Traceback [most recent call last]:
  File "", line 1, in 
ValueError: invalid literal for int[] with base 10: '23a'
9 sẽ dẫn đến một ngoại lệ được nâng lên:

>>> integerFirst = 23
>>> floatFirst = 23.23
>>> complextFirst = 1 + 23j
2

Giống như hàm

>>> integerFirst = 23
>>> floatFirst = 23.23
>>> complextFirst = 1 + 23j
9,
>>> x = "23a"
>>> z = int[x]
Traceback [most recent call last]:
  File "", line 1, in 
ValueError: invalid literal for int[] with base 10: '23a'
7 cũng thoải mái hơn trong các loại số mà nó cho phép. Ví dụ, phần tưởng tượng của số có thể bị bỏ qua hoàn toàn, và cả số nguyên và phao cũng có thể được phân tích cú pháp:

>>> integerFirst = 23
>>> floatFirst = 23.23
>>> complextFirst = 1 + 23j
3

Tuy nhiên, như bạn có thể thấy, điều này không nên được sử dụng như một sự thay thế linh hoạt hơn cho ____ 44/________ 21 vì nó tự động thêm phần tưởng tượng của số vào phiên bản chuỗi.

Chuyển đổi số thành chuỗi

Sử dụng hàm str []

Hàm

>>> integerFirst = 23
>>> floatFirst = 23.23
>>> complextFirst = 1 + 23j
7 có thể được sử dụng để thay đổi bất kỳ loại số thành một chuỗi.

Hàm

>>> integerFirst = 23
>>> floatFirst = 23.23
>>> complextFirst = 1 + 23j
7 có sẵn từ Python 3.0+ vì các chuỗi trong Python 3.0+ là Unicode theo mặc định. Tuy nhiên, điều này không đúng với các phiên bản Python dưới 3.0 - trong đó để đạt được mục tiêu tương tự, hàm
>>> x = "23.4"
>>> z = int[x]
Traceback [most recent call last]:
  File "", line 1, in 
ValueError: invalid literal for int[] with base 10: '23.4'
8 được sử dụng:

>>> integerFirst = 23
>>> floatFirst = 23.23
>>> complextFirst = 1 + 23j
4

Điều tuyệt vời về

>>> integerFirst = 23
>>> floatFirst = 23.23
>>> complextFirst = 1 + 23j
7 là nó có thể xử lý việc chuyển đổi bất kỳ loại số nào thành chuỗi, vì vậy bạn không cần phải lo lắng về việc chọn phương thức chính xác dựa trên loại số bạn chuyển đổi.

Sử dụng hàm định dạng []

Một cách khác để chuyển đổi số thành chuỗi là sử dụng hàm

>>> int['1101100', base=2]
108
0, cho phép bạn đặt trình giữ chỗ trong một chuỗi và sau đó chuyển đổi một loại dữ liệu khác thành một chuỗi và điền vào trình giữ chỗ.

Để sử dụng chức năng, chỉ cần viết một chuỗi theo sau là

>>> int['1101100', base=2]
108
1 và chuyển các đối số cho người giữ chỗ.

Đây là một ví dụ:

>>> integerFirst = 23
>>> floatFirst = 23.23
>>> complextFirst = 1 + 23j
5

Các đối số trong hàm

>>> int['1101100', base=2]
108
1 cũng có thể được đề cập đến riêng lẻ, sử dụng vị trí hoặc tên biến của chúng:

>>> integerFirst = 23
>>> floatFirst = 23.23
>>> complextFirst = 1 + 23j
6

Lưu ý rằng bên dưới mui xe, hàm

>>> int['1101100', base=2]
108
1 chỉ sử dụng
>>> integerFirst = 23
>>> floatFirst = 23.23
>>> complextFirst = 1 + 23j
7 để chuyển đổi các đối số thành chuỗi. Vì vậy, về cơ bản đây là một cách tương tự để chuyển đổi số thành các chuỗi như phần trước, nhưng
>>> int['1101100', base=2]
108
1 hoạt động như một hàm tiện lợi để định dạng một chuỗi.

Sự kết luận

Python cho phép bạn chuyển đổi chuỗi, số nguyên và nổi thay thế thay thế theo một vài cách khác nhau. Cách đơn giản nhất để làm điều này là sử dụng các hàm

>>> integerFirst = 23
>>> floatFirst = 23.23
>>> complextFirst = 1 + 23j
7,
>>> integerFirst = 23
>>> floatFirst = 23.23
>>> complextFirst = 1 + 23j
8 và
>>> integerFirst = 23
>>> floatFirst = 23.23
>>> complextFirst = 1 + 23j
9 cơ bản. Trên hết, có một vài cách khác cũng như hàm
>>> int['1101100', base=2]
108
0. Chỉ cần nhớ rằng các chức năng
>>> integerFirst = 23
>>> floatFirst = 23.23
>>> complextFirst = 1 + 23j
8,
>>> integerFirst = 23
>>> floatFirst = 23.23
>>> complextFirst = 1 + 23j
9 và
>>> x = "23a"
>>> z = int[x]
Traceback [most recent call last]:
  File "", line 1, in 
ValueError: invalid literal for int[] with base 10: '23a'
7 có những hạn chế của chúng và có thể nêu ra các ngoại lệ nếu chuỗi đầu vào không được định dạng chính xác như họ mong đợi.

Làm thế nào để bạn chuyển đổi dữ liệu thành số trong Python?

Làm thế nào để chuyển đổi các biến phân loại thành số trong Python ?..
Tạo từ điển và chuyển đổi nó thành DataFrame ..
Sử dụng chức năng "get_dummies" cho mã hóa ..
Kết nối bộ dữ liệu được mã hóa cuối cùng vào DataFrame cuối cùng ..
Thả cột biến phân loại ..

Làm thế nào để bạn chuyển đổi một chuỗi thành một loại số?

Chúng ta có thể sử dụng toán tử '+' unary, number [], parseInt [] hoặc parseFloat [] để chuyển đổi chuỗi thành số.use the '+' unary operator , Number[], parseInt[] or parseFloat[] function to convert string to number.

Chúng ta có thể chuyển đổi chuỗi thành số không?

Toán tử Unary Plus [ +] sẽ chuyển đổi một chuỗi thành một số.Nhà điều hành sẽ đi trước toán hạng.Chúng ta cũng có thể sử dụng toán tử Unary Plus [ +] để chuyển đổi chuỗi thành số điểm nổi.Nếu giá trị chuỗi không thể được chuyển đổi thành một số thì kết quả sẽ là NAN.

Các giá trị chuỗi có thể được chuyển đổi thành int python không?

Trong Python, một chuỗi có thể được chuyển đổi thành một số nguyên bằng hàm int [] tích hợp.Hàm int [] có trong bất kỳ loại dữ liệu python nào và chuyển đổi nó thành một số nguyên.an strings can be converted into a integer using the built-in int[] function. The int[] function takes in any python data type and converts it into a integer.

Bài Viết Liên Quan

Chủ Đề