Hướng dẫn number to english words in python - số sang các từ tiếng Anh trong python

Giả sử chúng ta có một số. Số có thể là bất cứ thứ gì trong từ 0 đến 231 - 1. Chúng ta phải chuyển đổi số thành từ. Vì vậy, nếu số lượng giống như 512, thì kết quả sẽ là năm trăm mười hai.

Để giải quyết vấn đề này, chúng tôi sẽ làm theo các bước này -

  • Xác định một số danh sách như Less_Than_20, điều này sẽ chứa tất cả các từ từ một đến mười chín

  • Một mảng khác như hàng chục để giữ hàng chục, hai mươi, ba mươi và vân vân lên tới chín mươi

  • Một mảng khác cho hàng ngàn, để giữ hàng ngàn, triệu và tỷ

  • Xác định một hàm gọi là người trợ giúp [], điều này sẽ mất n

  • Nếu n là 0, thì hãy trả lại chuỗi trống

  • Nếu không

  • Mặt khác, khi n 0

    • Nếu num mod 1000 không phải là 0, thì

      • Ans: = người trợ giúp [Num mod 1000] + hàng ngàn [i] + không gian trống + ANS

  • trả lại ans

Hãy cho chúng tôi xem việc thực hiện sau đây để hiểu rõ hơn -

Thí dụ

class Solution[object]:
less_than_20 = ["", "One", "Two", "Three", "Four", "Five", "Six",
"Seven", "Eight", "Nine", "Ten", "Eleven", "Twelve", "Thirteen",
"Fourteen", "Fifteen", "Sixteen", "Seventeen", "Eighteen",
"Nineteen"]
   tens = ["","Ten", "Twenty", "Thirty", "Forty", "Fifty", "Sixty",
"Seventy", "Eighty", "Ninety"]
thousands = ["", "Thousand", "Million", "Billion"]
   def numberToWords[self, num]:
      if num == 0:
         return "Zero"
      ans = ""
      i = 0
      while num > 0:
         if num % 1000 != 0:
            ans = self.helper[num % 1000] + Solution.thousands[i] + " " + ans
            i += 1
            num //= 1000
         return ans.strip[]
   def helper[self, n]:
      if n == 0:
         return ""
      elif n < 20:
         return Solution.less_than_20[n] + " "
      elif n < 100:
         return Solution.tens[n//10] + " " + self.helper[n % 10]
      else:
         return Solution.less_than_20[n // 100] + " Hundred " +
self.helper[n % 100]
ob = Solution[]
print[ob.numberToWords[512]]
print[ob.numberToWords[7835271]]

Đầu vào

512
7835271

Đầu ra

Five Hundred Twelve
Seven Million Eight Hundred Thirty Five Thousand Two Hundred Seventy One

Cập nhật vào ngày 09 tháng 6 năm 2020 07:37:06

  • Câu hỏi và câu trả lời liên quan
  • Số nguyên từ tiếng Anh trong Python
  • Những từ tiếng Anh mới mà bạn đã học được hôm nay là gì?
  • Tôi thường đồng xu nhiều từ bằng tiếng Anh. Làm thế nào để đưa họ vào từ điển?
  • Chương trình thể hiện số nguyên dương tính bằng các từ trong C ++
  • Chương trình Python để hoán đổi trường hợp tiếng Anh
  • La Mã đến số nguyên trong Python
  • Học tiếng Anh dễ dàng vào năm 2020: Mọi thứ bạn nên biết về học tiếng Anh
  • Danh sách nhị phân để số nguyên trong Python
  • Cơ sở 3 đến số nguyên trong Python
  • Chuyển đổi tuple thành số nguyên trong python
  • Chương trình Java để hiển thị bảng chữ cái tiếng Anh
  • Sự nhân cách hóa trong tiếng Anh là gì?
  • In các từ theo chiều dọc trong python
  • Số nguyên ngược trong Python
  • Một số cụm từ tiếng Anh hữu ích có thể cải thiện tiếng Anh của tôi là gì?

Mô-đun Num2Words trong Python, chuyển đổi số [như 34] thành các từ [như ba mươi tư]. Ngoài ra, thư viện này có hỗ trợ cho nhiều ngôn ngữ. Trong bài viết này, chúng ta sẽ thấy cách chuyển đổi số thành các từ bằng cách sử dụng num2words Module.

Cài đặt có thể dễ dàng cài đặt num2words bằng PIP.
One can easily install num2words using pip.

pip install num2words

Hãy xem xét hai trích đoạn sau từ các tệp khác nhau được lấy từ 20 nhóm tin, cơ sở dữ liệu NLP phổ biến. Tiền xử lý 20 nhóm tin một cách hiệu quả vẫn là một vấn đề quan tâm.

Trong bài viết, Martin Preston viết: Tại sao không sử dụng thư viện PD C để đọc/viết các tệp TIFF? Tôi đã mất 20 phút để bắt đầu sử dụng chúng trong ứng dụng của riêng bạn.iscis VIII là lần thứ tám của một loạt các cuộc họp đã tập hợp các nhà khoa học và kỹ sư máy tính từ khoảng hai mươi quốc gia. Hội nghị năm nay sẽ được tổ chức tại Thành phố Khu nghỉ mát Địa Trung Hải xinh đẹp của Antalya, trong một khu vực giàu có về các địa điểm tự nhiên cũng như lịch sử.20 minutes to start using them in your own app.
ISCIS VIII is the eighth of a series of meetings which have brought together computer scientists and engineers from about twenty countries. This year’s conference will be held in the beautiful Mediterranean resort city of Antalya, in a region rich in natural as well as historical sites.

Trong hai trích đoạn trên, người ta có thể quan sát rằng số 20 20 xuất hiện ở cả hai dạng số và bảng chữ cái. Đơn giản chỉ cần làm theo các bước xử lý trước, liên quan đến mã thông báo, hóa hóa và vv sẽ không thể ánh xạ vào 20, và hai mươi vào cùng một thân cây, có tầm quan trọng theo ngữ cảnh. May mắn thay, chúng tôi có thư viện được xây dựng, num2words giải quyết vấn đề này trong một dòng.

Dưới đây là việc sử dụng mẫu của công cụ.

from num2words

512
7835271
0 num2words

512
7835271
2
512
7835271
3
512
7835271
4
512
7835271
5

512
7835271
2
512
7835271
3
512
7835271
4
512
7835271
9
Five Hundred Twelve
Seven Million Eight Hundred Thirty Five Thousand Two Hundred Seventy One
0
Five Hundred Twelve
Seven Million Eight Hundred Thirty Five Thousand Two Hundred Seventy One
1
512
7835271
5

512
7835271
2
512
7835271
3
512
7835271
4
512
7835271
9
Five Hundred Twelve
Seven Million Eight Hundred Thirty Five Thousand Two Hundred Seventy One
0
Five Hundred Twelve
Seven Million Eight Hundred Thirty Five Thousand Two Hundred Seventy One
8
512
7835271
5

512
7835271
2
512
7835271
3
512
7835271
4
512
7835271
9
Five Hundred Twelve
Seven Million Eight Hundred Thirty Five Thousand Two Hundred Seventy One
0
pip install num2words
5
512
7835271
5

512
7835271
2
512
7835271
3
512
7835271
4
512
7835271
9
Five Hundred Twelve
Seven Million Eight Hundred Thirty Five Thousand Two Hundred Seventy One
0
thirty-six
thirty-sixth
36th
zero euro, thirty-six cents
treinta y seis
2
512
7835271
5

512
7835271
2
512
7835271
3
512
7835271
4
thirty-six
thirty-sixth
36th
zero euro, thirty-six cents
treinta y seis
7
Five Hundred Twelve
Seven Million Eight Hundred Thirty Five Thousand Two Hundred Seventy One
0
thirty-six
thirty-sixth
36th
zero euro, thirty-six cents
treinta y seis
9
512
7835271
5

Output:

thirty-six
thirty-sixth
36th
zero euro, thirty-six cents
treinta y seis

Do đó, trong bước xử lý trước, người ta có thể chuyển đổi tất cả các giá trị số thành các từ để có độ chính xác tốt hơn trong các giai đoạn tiếp theo.

Tài liệu tham khảo: //pypi.org/project/num2words/ //pypi.org/project/num2words/

Làm thế nào để bạn chuyển đổi một số sang tiếng Anh trong Python?

Mô-đun Num2Words trong Python, chuyển đổi số [như 34] thành các từ [như ba mươi tư]. Ngoài ra, thư viện này có hỗ trợ cho nhiều ngôn ngữ. Trong bài viết này, chúng ta sẽ thấy cách chuyển đổi số thành các từ bằng mô -đun NUM2Words. Người ta có thể dễ dàng cài đặt num2words bằng PIP. in Python, which converts number [like 34] to words [like thirty-four]. Also, this library has support for multiple languages. In this article, we will see how to convert number to words using num2words module. One can easily install num2words using pip.

Làm thế nào để bạn thay đổi một số thành văn bản trong Python?

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

Làm thế nào để bạn gán một số cho một từ trong Python?

Thông thường, khi gán một giá trị cho một từ, kỹ thuật dễ nhất [và giới hạn nhất] để lấy giá trị ASCII của mỗi chữ cái trong một từ và tính tất cả chúng lại với nhau.Sử dụng hàm "Ord", bạn có thể chuyển đổi một chữ cái thành biểu diễn số của nó;Sau đó, nó chỉ đơn giản là một vấn đề của việc thêm các chữ cái.Using the "ord" function, you can convert a letter to its numerical representation; then it's simply be a matter of adding the letters.

Num2words trong Python là gì?

Num2words là một thư viện chuyển đổi các số như 42 thành các từ như bốn mươi hai.Nó hỗ trợ nhiều ngôn ngữ [xem danh sách bên dưới để biết danh sách đầy đủ các ngôn ngữ] và thậm chí có thể tạo các số thứ tự như bốn mươi giây [mặc dù tính năng cuối cùng này có một chút lỗi đối với một số ngôn ngữ tại thời điểm này].a library that converts numbers like 42 to words like forty-two . It supports multiple languages [see the list below for full list of languages] and can even generate ordinal numbers like forty-second [although this last feature is a bit buggy for some languages at the moment].

Bài Viết Liên Quan

Chủ Đề