Hướng dẫn how to extract number from word in python - cách lấy số từ word trong python

Xin chào, Độc giả! Trong bài viết này, chúng tôi sẽ tập trung vào các cách để trích xuất các chữ số từ chuỗi Python. Vì vậy, hãy để chúng tôi bắt đầu.ways to extract digits from a Python String. So, let us get started.

1. Sử dụng hàm isDigit [] để trích xuất các chữ số từ chuỗi python

Python cung cấp cho chúng tôi

Original String : Python4Journaldev
Extracted numbers from the list : 4
7 để kiểm tra sự hiện diện của các chữ số trong một chuỗi.

Hàm python isDigit [] trả về true nếu chuỗi đầu vào chứa các ký tự chữ số trong đó.True if the input string contains digit characters in it.

Syntax::

Chúng tôi không cần chuyển bất kỳ tham số nào cho nó. Là một đầu ra, nó trả về đúng hoặc sai tùy thuộc vào sự hiện diện của các ký tự chữ số trong một chuỗi.

Ví dụ 1:

inp_str = "Python4Journaldev"

print["Original String : " + inp_str] 
num = ""
for c in inp_str:
    if c.isdigit[]:
        num = num + c
print["Extracted numbers from the list : " + num] 

Trong ví dụ này, chúng tôi đã lặp lại ký tự chuỗi đầu vào bằng ký tự bằng cách sử dụng một vòng lặp. Ngay khi hàm isDigit [] gặp phải một chữ số, nó sẽ lưu trữ nó thành một biến chuỗi có tên ‘num.

Do đó, chúng ta thấy đầu ra như được hiển thị bên dưới

Output:

Original String : Python4Journaldev
Extracted numbers from the list : 4

Bây giờ, chúng ta thậm chí có thể sử dụng khả năng hiểu danh sách Python để câu lạc bộ chức năng lặp và idigit [] thành một dòng.

Bằng cách này, các ký tự chữ số được lưu trữ vào danh sách ‘Num, như được hiển thị bên dưới:

Ví dụ 2:

inp_str = "Hey readers, we all are here be 4 the time!"


print["Original string : " + inp_str] 


num = [int[x] for x in inp_str.split[] if x.isdigit[]] 

 
print["The numbers list is : " + str[num]] 

Output:

Original string : Hey readers, we all are here be 4 the time!
The numbers list is : [4]

2. Sử dụng thư viện regex để trích xuất các chữ số

Thư viện biểu thức chính quy Python có tên ‘Thư viện Regex‘ cho phép chúng tôi phát hiện sự hiện diện của các ký tự cụ thể như chữ số, một số ký tự đặc biệt, v.v. từ một chuỗi.regex library‘ enables us to detect the presence of particular characters such as digits, some special characters, etc. from a string.

Chúng ta cần nhập thư viện Regex vào môi trường Python trước khi thực hiện bất kỳ bước nào nữa.

Hơn nữa, chúng tôi

Original String : Python4Journaldev
Extracted numbers from the list : 4
8 để trích xuất các ký tự chữ số từ chuỗi. Phần ‘\ d+, sẽ giúp hàm findall [] để phát hiện sự hiện diện của bất kỳ chữ số nào.‘\d+’ would help the findall[] function to detect the presence of any digit.

Example:

import re
inp_str = "Hey readers, we all are here be 4 the time 1!"


print["Original string : " + inp_str] 

num = re.findall[r'\d+', inp_str] 

print[num]

Vì vậy, như đã thấy dưới đây, chúng tôi sẽ nhận được một danh sách tất cả các ký tự chữ số từ chuỗi.

Output:

Original string : Hey readers, we all are here be 4 the time 1!
['4', '1']

Sự kết luận

Bằng cách này, chúng tôi đã đi đến cuối chủ đề này. Hãy bình luận bên dưới, trong trường hợp bạn bắt gặp bất kỳ câu hỏi.

Tôi khuyên tất cả các bạn nên thử triển khai các ví dụ trên bằng các cấu trúc dữ liệu như danh sách, dict, v.v.

Để biết thêm các bài viết như vậy liên quan đến Python, hãy theo dõi và cho đến lúc đó, học hỏi hạnh phúc !! 🙂

Nhìn mã bên dưới.

Bạn có thể thấy trong ví dụ ở trên thông qua nums_from_string, chúng tôi có thể trích xuất thành công các số từ chuỗi mà không cần chỉ định bất kỳ loại dữ liệu nào như float hoặc int etc.

  • Bản tóm tắt
  • Vì vậy, chúng tôi đã thấy bốn phương pháp khác nhau mà qua đó chúng tôi có thể trích xuất các số từ một chuỗi trong Python. Phương pháp dễ nhất nhất là get_nums [], là một hàm của thư viện NUMS_FROM_STRING. Drwaback duy nhất của nó là, nó không đi kèm với Python và bạn phải cài đặt nó. Các phương thức khác như isdigit [] có thể không hữu ích vì nó dosen chiết xuất các số loại float. Trong Phương pháp 3, bạn phải thực hiện xử lý lỗi nếu không nó sẽ ném giá trịerRor. Chúng tôi đã sử dụng Python 3.10.1 để viết mã ví dụ. Để kiểm tra phiên bản của bạn, hãy viết PythonTHERversion trong thiết bị đầu cuối của bạn.
  • Trong bài viết này, chúng tôi sẽ học cách trích xuất các số từ một chuỗi nhất định trong Python.
  • Mục lục
  • Chuỗi trong Python là gì

Bản tóm tắt

Vì vậy, chúng tôi đã thấy bốn phương pháp khác nhau mà qua đó chúng tôi có thể trích xuất các số từ một chuỗi trong Python. Phương pháp dễ nhất nhất là get_nums [], là một hàm của thư viện NUMS_FROM_STRING. Drwaback duy nhất của nó là, nó không đi kèm với Python và bạn phải cài đặt nó. Các phương thức khác như isdigit [] có thể không hữu ích vì nó dosen chiết xuất các số loại float. Trong Phương pháp 3, bạn phải thực hiện xử lý lỗi nếu không nó sẽ ném giá trịerRor. Chúng tôi đã sử dụng Python 3.10.1 để viết mã ví dụ. Để kiểm tra phiên bản của bạn, hãy viết PythonTHERversion trong thiết bị đầu cuối của bạn.

Trong bài viết này, chúng tôi sẽ học cách trích xuất các số từ một chuỗi nhất định trong Python.

string_var = 'MSD scored 10773  runs in ODI cricket at the avg of 50 in 350 matched.'

# type[] will print data type of string_var
print[type[string_var]]

Đầu ra:

Trong ví dụ mã trên, bạn có thể thấy cách chúng tôi sử dụng cả hai phương thức Split [] và append [] để trích xuất số từ STR_VAR. Ở đây chúng tôi luôn ngoại trừ một giá trịerror. Nếu thử và ngoại trừ không được sử dụng ở đây, thì nó sẽ gây ra lỗi như thế này:

Về cơ bản, chúng tôi đã lặp lại tất cả các từ trong một chuỗi và cho mỗi từ, chúng tôi đã chuyển đổi nó thành float và thêm vào danh sách. Nếu bất kỳ từ nào không phải là số thì float [] sẽ ném lỗi, mà chúng tôi đã bắt và bỏ qua.

Phương pháp tiếp theo mà chúng ta sẽ sử dụng là hàm get_nums [] của thư viện NUMS_FROM_STRING. Thư viện này không đi kèm trước với Python, vì vậy chúng tôi phải cài đặt nó. Chỉ loại pip insttall nums_from_string trong thiết bị đầu cuối của bạn. Sau khi cài đặt, đây là phương pháp dễ nhất nhất mà qua đó chúng ta có thể trích xuất các số từ chuỗi.

Nhìn mã bên dưới. is a condition based shorter syntax through which you can filter values in a new list. Here in this method,

  • Bạn có thể thấy trong ví dụ ở trên thông qua nums_from_string, chúng tôi có thể trích xuất thành công các số từ chuỗi mà không cần chỉ định bất kỳ loại dữ liệu nào như float hoặc int etc.
  • Bản tóm tắt
  • Vì vậy, chúng tôi đã thấy bốn phương pháp khác nhau mà qua đó chúng tôi có thể trích xuất các số từ một chuỗi trong Python. Phương pháp dễ nhất nhất là get_nums [], là một hàm của thư viện NUMS_FROM_STRING. Drwaback duy nhất của nó là, nó không đi kèm với Python và bạn phải cài đặt nó. Các phương thức khác như isdigit [] có thể không hữu ích vì nó dosen chiết xuất các số loại float. Trong Phương pháp 3, bạn phải thực hiện xử lý lỗi nếu không nó sẽ ném giá trịerRor. Chúng tôi đã sử dụng Python 3.10.1 để viết mã ví dụ. Để kiểm tra phiên bản của bạn, hãy viết PythonTHERversion trong thiết bị đầu cuối của bạn.

Trong bài viết này, chúng tôi sẽ học cách trích xuất các số từ một chuỗi nhất định trong Python.

THÍ DỤ :

string_var = 'MSD scored 10773  runs in ODI cricket at the avg of 50.58 in 350 matched.'

numbers = [int[new_string] for new_string in str.split[string_var] if new_string.isdigit[]]

print[numbers]

# type[] will print data type of string_var
print[type[numbers]]

Đầu ra:

[10773, 350]

Trong ví dụ mã trên, bạn có thể thấy cách chúng tôi sử dụng cả hai phương thức Split [] và append [] để trích xuất số từ STR_VAR. Ở đây chúng tôi luôn ngoại trừ một giá trịerror. Nếu thử và ngoại trừ không được sử dụng ở đây, thì nó sẽ gây ra lỗi như thế này:

Về cơ bản, chúng tôi đã lặp lại tất cả các từ trong một chuỗi và cho mỗi từ, chúng tôi đã chuyển đổi nó thành float và thêm vào danh sách. Nếu bất kỳ từ nào không phải là số thì float [] sẽ ném lỗi, mà chúng tôi đã bắt và bỏ qua.re module stands for Regular Expression, which comes bundled with python library.

Phương pháp tiếp theo mà chúng ta sẽ sử dụng là hàm get_nums [] của thư viện NUMS_FROM_STRING. Thư viện này không đi kèm trước với Python, vì vậy chúng tôi phải cài đặt nó. Chỉ loại pip insttall nums_from_string trong thiết bị đầu cuối của bạn. Sau khi cài đặt, đây là phương pháp dễ nhất nhất mà qua đó chúng ta có thể trích xuất các số từ chuỗi.

THÍ DỤ :

Original String : Python4Journaldev
Extracted numbers from the list : 4
0

Đầu ra:

Original String : Python4Journaldev
Extracted numbers from the list : 4
1

Trong ví dụ mã trên, bạn có thể thấy cách chúng tôi sử dụng cả hai phương thức Split [] và append [] để trích xuất số từ STR_VAR. Ở đây chúng tôi luôn ngoại trừ một giá trịerror. Nếu thử và ngoại trừ không được sử dụng ở đây, thì nó sẽ gây ra lỗi như thế này:

Mục lục

Chuỗi trong Python là gì

  • Split []: Một chức năng tích hợp của Python được sử dụng để chia chuỗi thành một danh sách. A built in function of python used to split string into a list.
  • append []: Được xây dựng trong chức năng của Python được sử dụng để thêm một mục vào cuối danh sách. Built in function of python used to add an item to the end of a list.

Hãy xem một ví dụ về mehtod này.

THÍ DỤ :

Original String : Python4Journaldev
Extracted numbers from the list : 4
2

Đầu ra:

Original String : Python4Journaldev
Extracted numbers from the list : 4
1

Trong ví dụ mã trên, bạn có thể thấy cách chúng tôi sử dụng cả hai phương thức Split [] và append [] để trích xuất số từ STR_VAR. Ở đây chúng tôi luôn ngoại trừ một giá trịerror. Nếu thử và ngoại trừ không được sử dụng ở đây, thì nó sẽ gây ra lỗi như thế này:ValueError. If try and except are not used here, then it will throw an error like this:

Original String : Python4Journaldev
Extracted numbers from the list : 4
4

Về cơ bản, chúng tôi đã lặp lại tất cả các từ trong một chuỗi và cho mỗi từ, chúng tôi đã chuyển đổi nó thành float và thêm vào danh sách. Nếu bất kỳ từ nào không phải là số thì float [] sẽ ném lỗi, mà chúng tôi đã bắt và bỏ qua.

Phương pháp tiếp theo mà chúng ta sẽ sử dụng là hàm get_nums [] của thư viện NUMS_FROM_STRING. Thư viện này không đi kèm trước với Python, vì vậy chúng tôi phải cài đặt nó. Chỉ loại pip insttall nums_from_string trong thiết bị đầu cuối của bạn. Sau khi cài đặt, đây là phương pháp dễ nhất nhất mà qua đó chúng ta có thể trích xuất các số từ chuỗi.nums_from_string library. This library doesn’t comes pre bundled with Python, so we have to install it.Just type pip insttall nums_from_string in your terminal. After installing this is the most easiest method through which we can extract numbers from string.

Nhìn mã bên dưới.

THÍ DỤ :

Original String : Python4Journaldev
Extracted numbers from the list : 4
5

Đầu ra:

Original String : Python4Journaldev
Extracted numbers from the list : 4
6

Trong ví dụ mã trên, bạn có thể thấy cách chúng tôi sử dụng cả hai phương thức Split [] và append [] để trích xuất số từ STR_VAR. Ở đây chúng tôi luôn ngoại trừ một giá trịerror. Nếu thử và ngoại trừ không được sử dụng ở đây, thì nó sẽ gây ra lỗi như thế này:

Về cơ bản, chúng tôi đã lặp lại tất cả các từ trong một chuỗi và cho mỗi từ, chúng tôi đã chuyển đổi nó thành float và thêm vào danh sách. Nếu bất kỳ từ nào không phải là số thì float [] sẽ ném lỗi, mà chúng tôi đã bắt và bỏ qua.

Phương pháp tiếp theo mà chúng ta sẽ sử dụng là hàm get_nums [] của thư viện NUMS_FROM_STRING. Thư viện này không đi kèm trước với Python, vì vậy chúng tôi phải cài đặt nó. Chỉ loại pip insttall nums_from_string trong thiết bị đầu cuối của bạn. Sau khi cài đặt, đây là phương pháp dễ nhất nhất mà qua đó chúng ta có thể trích xuất các số từ chuỗi.python –version in your terminal.

Bài Viết Liên Quan

Chủ Đề