====================================
Vietnam Number Toolkit
====================================
.. image:: https://madewithlove.now.sh/vn?heart=true&colorB=%23d5481d
:target: https://pypi.python.org/pypi/vietnam-number
.. image:: https://img.shields.io/pypi/v/vietnam-number
:target: https://pypi.python.org/pypi/vietnam-number
.. image:: https://img.shields.io/badge/python-3.8%20%7C%203.9%20%7C%203.10%20%7C%203.11%20%7C%203.12%20%7C%203.13-blue
:target: https://pypi.python.org/pypi/vietnam-number
.. image:: https://img.shields.io/badge/license-GPLv3-brightgreen.svg
:target: https://pypi.python.org/pypi/vietnam-number
.. image:: https://img.shields.io/badge/chat-on%20facebook-informational
:target: https://www.facebook.com/ng.thuong45/
|
.. image:: https://user-images.githubusercontent.com/66929261/100044430-424d1800-2e42-11eb-8875-3b5abbf25ade.png
**Vietnam-number** là một thư viện Python mã nguồn mở hỗ trợ cho việc xữ lý chữ số trong Tiếng Việt.
+---------------------+------------------------------------------------------------------------------------------------+
| **Support** | **Description** |
+---------------------+------------------------------------------------------------------------------------------------+
| Văn nói - Văn viết | * Hỗ trợ cho cả văn viết và văn nói thông dụng. |
+---------------------+------------------------------------------------------------------------------------------------+
| Số có giá trị lớn | * Hỗ trợ chuyển đổi chử số từ 0 đến 999.999.999.999 |
+---------------------+------------------------------------------------------------------------------------------------+
| Từ ngữ dân gian | * Hỗ trợ các từ ngữ dân gian, vùng miền: |
| | * Vd: 'tỷ - tỏi', 'triệu - chai, củ', 'nghìn - ngàn', 'trăm - lít' , 'bốn - tư'... |
+---------------------+------------------------------------------------------------------------------------------------+
| Cách đọc đơn | * Hỗ trợ chuyển đổi văn bản chữ số sang số theo cách đọc từng số: |
| | * Vd: 'không một hai ba bốn năm sáu bảy tám chín' = 0123456789 |
+---------------------+------------------------------------------------------------------------------------------------+
| Cách đọc đôi | * Hỗ trợ chuyển đổi văn bản chữ số sang số theo cách đọc từng cặp số: |
| | * Vd: 'không một hai ba bốn mươi lăm sáu mươi bảy tám mươi chín' = 0123456789 |
+---------------------+------------------------------------------------------------------------------------------------+
Cài đặt
----------------------------------------
Cài đặt vietnam-number bằng lệnh:
| **$ pip install vietnam-number**
Tính năng
----------------------------------------
| `1. Chữ số sang số có từ liên kết.`_
| `2. Chữ số sang số không có từ liên kết.`_
| `3. Số sang chữ số có từ liên kết`_
| `4. Số sang chữ số không có từ liên kết`_
****************************************
1. Chữ số sang số có từ liên kết.
****************************************
.. image:: https://img.shields.io/badge/feature-word%20to%20number-orange
| Chuyển đổi **Chữ số** sang **Số** có các từ liên kết ('mươi', 'trăm', 'nghìn', 'triệu', 'tỷ').
| Sử dụng phù hợp trong các tình huống như: đơn vị tiền tệ, số tuổi...
.. code-block:: python
>>> # -*- coding: utf-8 -*-
>>> from vietnam_number import w2n
>>> text = 'một triệu không trăm tám mươi lăm nghìn ba trăm ba mươi hai'
>>> w2n(text)
1085332
# Văn nói vắn tắt
>>> text_1 = 'một triệu tư'
>>> text_2 = 'nghàn hai'
>>> w2n(text_1)
1400000
>>> w2n(text_2)
1200
# Hỗ trợ số có giá trị lớn
>>> text = 'chín trăm năm mươi ba tỷ lẽ tám mươi bảy triệu'
>>> w2n(text)
953087000000
# Văn nói đặt biệt
# Chỉ áp dụng cho chữ số có từ liên kết.
# Trường hợp không có từ liên kết chỉ áp dụng cho các số có giá trị từ 0 đến 999
>>> text_1 = 'ba bốn mươi hai'
>>> text_2 = 'ba mươi bảy năm'
>>> w2n(text_1)
342
>>> w2n(text_1)
375
# Từ ngữ dân gian
>>> text = 'bảy củ'
>>> w2n(text)
7000000
****************************************
2. Chữ số sang số không có từ liên kết.
****************************************
.. image:: https://img.shields.io/badge/feature-word%20to%20number-orange
| Chuyển đổi **Chữ số** sang **Số** không có từ liên kết.
| Sử dụng phù hợp trong các tình huống một dãy nhiều chữ số khác nhau như: số chứng minh thư, số visa, số thẻ ATM, số điện thoại, tài khoản ngân hàng...
.. code-block:: python
>>> # -*- coding: utf-8 -*-
>>> from vietnam_number import w2n_single, w2n_couple
# Văn nói cho cách đọc đơn từng số một.
>>> text = 'không tám không chín một hai ba bốn năm sáu'
>>> w2n_single(text)
0809123456
# Cách đọc đôi từng cặp số.
# Bắt buộc số ban đầu phải là số kết hợp bởi từng cặp số,
# hay nói cách khác số ban đầu phải có số lượng chữ số chia hết cho 2.
# Trong trường hợp đặt biệt này, dãy số có thể có hoặc không có từ liên kết hàng chục là từ 'mươi'...
# vd:
# 032 -> 'không ba mươi hai' -> không được phép (số lượng phần tử số ban đầu lẽ) -> đầu ra không chính xác.
# 0324 -> 'không ba mươi hai bốn' -> không được phép (không phải cách đọc từng cặp số một) -> đầu ra không chính xác
# 0324 -> 'không ba hai mươi bốn' -> Ok
>>> text = 'hai mươi ba bảy tám mươi bốn năm bốn chín mươi mốt mười hai bảy năm'
>>> w2n_couple(text)
20378454911275
****************************************
3. Số sang chữ số có từ liên kết
****************************************
.. image:: https://img.shields.io/badge/feature-number%20to%20word-yellow
| Chuyển đổi **Số** sang **Chữ số** cần có các từ liên kết như ('mươi', 'trăm', 'nghìn', 'triệu', 'tỷ').
| Sử dụng phù hợp trong các trường hợp như: giá sản phẩm, đơn vị tiền tệ, số tuổi...,
| Hỗ trợ văn nói cho các từ như 'một - mốt', 'năm - lăm', 'lẽ - linh'...
.. code-block:: python
>>> # -*- coding: utf-8 -*-
>>> from vietnam_number import n2w
>>> number = '115205201211'
>>> n2w(number)
'một trăm mười lăm tỷ hai trăm lẽ năm triệu hai trăm lẽ một nghìn hai trăm mười một'
# hỗ trợ một số trường hợp có cách đọc đặc biệt
>>> list_number = ['111', '200', '101', '121', '815', '805', '825']
>>> for element in list_number:
... print(n2w(element))
...
'một trăm mười một'
'hai trăm'
'một trăm lẽ một'
'một trăm hai mươi mốt'
'tám trăm mười lăm'
'tám trăm lẽ năm'
'tám trăm hai mươi lăm'
****************************************
4. Số sang chữ số không có từ liên kết
****************************************
.. image:: https://img.shields.io/badge/feature-number%20to%20word-yellow
| Chuyển đổi **Số** sang **Chữ số** không cần có các từ liên kết.
| Sử dụng phù hợp trong các trường hợp một chuỗi nhiều số khác nhau như: số chứng minh thư, số visa, số thẻ ATM, số điện thoại, tài khoản ngân hàng...
.. code-block:: python
>>> # -*- coding: utf-8 -*-
>>> from vietnam_number import n2w_single
# Chuyển đổi từng số một.
>>> number = '0908123456'
>>> n2w_single(number)
'không chín không tám một hai ba bốn năm sáu'
# Hỗ trợ cho số có đầu số là '+84'
>>> number = '+84908123456'
>>> n2w_single(number)
'không chín không tám một hai ba bốn năm sáu'
Tính Năng Trong Tương Lai
----------------------------------------
* Hỗ trợ số thập phân.
* Hỗ trợ số âm.
* Chuyển đổi số thứ tự
* Chuyển đổi ngày tháng năm
* Chuyển đổi đơn vị đo khối lượng (g - kg - yến - tạ - tấn)
* Chuyển đổi đơn vị đo độ dài (mm - cm - m - km)
Đóng Góp
----------------------------------------
Thông báo lỗi :beetle: tại https://github.com/ngthuong45/vietnam-number/issues
Nếu bạn phát hiện một lỗi mới, vui lòng thông báo đính kèm các thông tin:
* Thông tin hệ điều hành của bạn.
* Những thiết lập ở local nếu có.
* Các bước chi tiết dẫn đến phát hiện lỗi.
|
*Để lại một sao :star: nếu thư viện giúp ích được phần nào cho công việc của bạn nhé!.*
Raw data
{
"_id": null,
"home_page": "https://github.com/ngthuong45/vietnam-number.git",
"name": "vietnam_number",
"maintainer": null,
"docs_url": null,
"requires_python": "<4.0,>=3.9",
"maintainer_email": null,
"keywords": "Vietnam, number, w2n, n2w, number to word, word to number, text to number, number to text",
"author": "Nguy\u1ec5n Ho\u00e0i Th\u01b0\u01a1ng",
"author_email": "ng.thuong.lio@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/fd/bb/dd3a71751ba887839a4c7c6ba3c3f4d479223551a6a67acf8cfc33b9fb09/vietnam_number-1.0.4.tar.gz",
"platform": null,
"description": "====================================\nVietnam Number Toolkit\n====================================\n\n.. image:: https://madewithlove.now.sh/vn?heart=true&colorB=%23d5481d\n :target: https://pypi.python.org/pypi/vietnam-number\n\n.. image:: https://img.shields.io/pypi/v/vietnam-number\n :target: https://pypi.python.org/pypi/vietnam-number\n\n.. image:: https://img.shields.io/badge/python-3.8%20%7C%203.9%20%7C%203.10%20%7C%203.11%20%7C%203.12%20%7C%203.13-blue\n :target: https://pypi.python.org/pypi/vietnam-number\n\n.. image:: https://img.shields.io/badge/license-GPLv3-brightgreen.svg\n :target: https://pypi.python.org/pypi/vietnam-number\n\n.. image:: https://img.shields.io/badge/chat-on%20facebook-informational\n :target: https://www.facebook.com/ng.thuong45/\n\n|\n\n.. image:: https://user-images.githubusercontent.com/66929261/100044430-424d1800-2e42-11eb-8875-3b5abbf25ade.png\n\n**Vietnam-number** l\u00e0 m\u1ed9t th\u01b0 vi\u1ec7n Python m\u00e3 ngu\u1ed3n m\u1edf h\u1ed7 tr\u1ee3 cho vi\u1ec7c x\u1eef l\u00fd ch\u1eef s\u1ed1 trong Ti\u1ebfng Vi\u1ec7t.\n\n+---------------------+------------------------------------------------------------------------------------------------+\n| **Support** | **Description** |\n+---------------------+------------------------------------------------------------------------------------------------+\n| V\u0103n n\u00f3i - V\u0103n vi\u1ebft | * H\u1ed7 tr\u1ee3 cho c\u1ea3 v\u0103n vi\u1ebft v\u00e0 v\u0103n n\u00f3i th\u00f4ng d\u1ee5ng. |\n+---------------------+------------------------------------------------------------------------------------------------+\n| S\u1ed1 c\u00f3 gi\u00e1 tr\u1ecb l\u1edbn | * H\u1ed7 tr\u1ee3 chuy\u1ec3n \u0111\u1ed5i ch\u1eed s\u1ed1 t\u1eeb 0 \u0111\u1ebfn 999.999.999.999 |\n+---------------------+------------------------------------------------------------------------------------------------+\n| T\u1eeb ng\u1eef d\u00e2n gian | * H\u1ed7 tr\u1ee3 c\u00e1c t\u1eeb ng\u1eef d\u00e2n gian, v\u00f9ng mi\u1ec1n: |\n| | * Vd: 't\u1ef7 - t\u1ecfi', 'tri\u1ec7u - chai, c\u1ee7', 'ngh\u00ecn - ng\u00e0n', 'tr\u0103m - l\u00edt' , 'b\u1ed1n - t\u01b0'... |\n+---------------------+------------------------------------------------------------------------------------------------+\n| C\u00e1ch \u0111\u1ecdc \u0111\u01a1n | * H\u1ed7 tr\u1ee3 chuy\u1ec3n \u0111\u1ed5i v\u0103n b\u1ea3n ch\u1eef s\u1ed1 sang s\u1ed1 theo c\u00e1ch \u0111\u1ecdc t\u1eebng s\u1ed1: |\n| | * Vd: 'kh\u00f4ng m\u1ed9t hai ba b\u1ed1n n\u0103m s\u00e1u b\u1ea3y t\u00e1m ch\u00edn' = 0123456789 |\n+---------------------+------------------------------------------------------------------------------------------------+\n| C\u00e1ch \u0111\u1ecdc \u0111\u00f4i | * H\u1ed7 tr\u1ee3 chuy\u1ec3n \u0111\u1ed5i v\u0103n b\u1ea3n ch\u1eef s\u1ed1 sang s\u1ed1 theo c\u00e1ch \u0111\u1ecdc t\u1eebng c\u1eb7p s\u1ed1: |\n| | * Vd: 'kh\u00f4ng m\u1ed9t hai ba b\u1ed1n m\u01b0\u01a1i l\u0103m s\u00e1u m\u01b0\u01a1i b\u1ea3y t\u00e1m m\u01b0\u01a1i ch\u00edn' = 0123456789 |\n+---------------------+------------------------------------------------------------------------------------------------+\n\nC\u00e0i \u0111\u1eb7t\n----------------------------------------\n\nC\u00e0i \u0111\u1eb7t vietnam-number b\u1eb1ng l\u1ec7nh:\n\n| **$ pip install vietnam-number**\n\nT\u00ednh n\u0103ng\n----------------------------------------\n\n| `1. Ch\u1eef s\u1ed1 sang s\u1ed1 c\u00f3 t\u1eeb li\u00ean k\u1ebft.`_\n| `2. Ch\u1eef s\u1ed1 sang s\u1ed1 kh\u00f4ng c\u00f3 t\u1eeb li\u00ean k\u1ebft.`_\n| `3. S\u1ed1 sang ch\u1eef s\u1ed1 c\u00f3 t\u1eeb li\u00ean k\u1ebft`_\n| `4. S\u1ed1 sang ch\u1eef s\u1ed1 kh\u00f4ng c\u00f3 t\u1eeb li\u00ean k\u1ebft`_\n\n****************************************\n1. Ch\u1eef s\u1ed1 sang s\u1ed1 c\u00f3 t\u1eeb li\u00ean k\u1ebft.\n****************************************\n\n.. image:: https://img.shields.io/badge/feature-word%20to%20number-orange\n\n| Chuy\u1ec3n \u0111\u1ed5i **Ch\u1eef s\u1ed1** sang **S\u1ed1** c\u00f3 c\u00e1c t\u1eeb li\u00ean k\u1ebft ('m\u01b0\u01a1i', 'tr\u0103m', 'ngh\u00ecn', 'tri\u1ec7u', 't\u1ef7').\n| S\u1eed d\u1ee5ng ph\u00f9 h\u1ee3p trong c\u00e1c t\u00ecnh hu\u1ed1ng nh\u01b0: \u0111\u01a1n v\u1ecb ti\u1ec1n t\u1ec7, s\u1ed1 tu\u1ed5i...\n\n.. code-block:: python\n\n >>> # -*- coding: utf-8 -*-\n >>> from vietnam_number import w2n\n >>> text = 'm\u1ed9t tri\u1ec7u kh\u00f4ng tr\u0103m t\u00e1m m\u01b0\u01a1i l\u0103m ngh\u00ecn ba tr\u0103m ba m\u01b0\u01a1i hai'\n\n >>> w2n(text)\n 1085332\n\n # V\u0103n n\u00f3i v\u1eafn t\u1eaft\n >>> text_1 = 'm\u1ed9t tri\u1ec7u t\u01b0'\n >>> text_2 = 'ngh\u00e0n hai'\n\n >>> w2n(text_1)\n 1400000\n\n >>> w2n(text_2)\n 1200\n\n # H\u1ed7 tr\u1ee3 s\u1ed1 c\u00f3 gi\u00e1 tr\u1ecb l\u1edbn\n >>> text = 'ch\u00edn tr\u0103m n\u0103m m\u01b0\u01a1i ba t\u1ef7 l\u1ebd t\u00e1m m\u01b0\u01a1i b\u1ea3y tri\u1ec7u'\n\n >>> w2n(text)\n 953087000000\n\n # V\u0103n n\u00f3i \u0111\u1eb7t bi\u1ec7t\n # Ch\u1ec9 \u00e1p d\u1ee5ng cho ch\u1eef s\u1ed1 c\u00f3 t\u1eeb li\u00ean k\u1ebft.\n # Tr\u01b0\u1eddng h\u1ee3p kh\u00f4ng c\u00f3 t\u1eeb li\u00ean k\u1ebft ch\u1ec9 \u00e1p d\u1ee5ng cho c\u00e1c s\u1ed1 c\u00f3 gi\u00e1 tr\u1ecb t\u1eeb 0 \u0111\u1ebfn 999\n >>> text_1 = 'ba b\u1ed1n m\u01b0\u01a1i hai'\n >>> text_2 = 'ba m\u01b0\u01a1i b\u1ea3y n\u0103m'\n\n >>> w2n(text_1)\n 342\n\n >>> w2n(text_1)\n 375\n\n # T\u1eeb ng\u1eef d\u00e2n gian\n >>> text = 'b\u1ea3y c\u1ee7'\n\n >>> w2n(text)\n 7000000\n\n****************************************\n2. Ch\u1eef s\u1ed1 sang s\u1ed1 kh\u00f4ng c\u00f3 t\u1eeb li\u00ean k\u1ebft.\n****************************************\n\n.. image:: https://img.shields.io/badge/feature-word%20to%20number-orange\n\n| Chuy\u1ec3n \u0111\u1ed5i **Ch\u1eef s\u1ed1** sang **S\u1ed1** kh\u00f4ng c\u00f3 t\u1eeb li\u00ean k\u1ebft.\n| S\u1eed d\u1ee5ng ph\u00f9 h\u1ee3p trong c\u00e1c t\u00ecnh hu\u1ed1ng m\u1ed9t d\u00e3y nhi\u1ec1u ch\u1eef s\u1ed1 kh\u00e1c nhau nh\u01b0: s\u1ed1 ch\u1ee9ng minh th\u01b0, s\u1ed1 visa, s\u1ed1 th\u1ebb ATM, s\u1ed1 \u0111i\u1ec7n tho\u1ea1i, t\u00e0i kho\u1ea3n ng\u00e2n h\u00e0ng...\n\n.. code-block:: python\n\n >>> # -*- coding: utf-8 -*-\n >>> from vietnam_number import w2n_single, w2n_couple\n\n # V\u0103n n\u00f3i cho c\u00e1ch \u0111\u1ecdc \u0111\u01a1n t\u1eebng s\u1ed1 m\u1ed9t.\n >>> text = 'kh\u00f4ng t\u00e1m kh\u00f4ng ch\u00edn m\u1ed9t hai ba b\u1ed1n n\u0103m s\u00e1u'\n\n >>> w2n_single(text)\n 0809123456\n\n # C\u00e1ch \u0111\u1ecdc \u0111\u00f4i t\u1eebng c\u1eb7p s\u1ed1.\n # B\u1eaft bu\u1ed9c s\u1ed1 ban \u0111\u1ea7u ph\u1ea3i l\u00e0 s\u1ed1 k\u1ebft h\u1ee3p b\u1edfi t\u1eebng c\u1eb7p s\u1ed1,\n # hay n\u00f3i c\u00e1ch kh\u00e1c s\u1ed1 ban \u0111\u1ea7u ph\u1ea3i c\u00f3 s\u1ed1 l\u01b0\u1ee3ng ch\u1eef s\u1ed1 chia h\u1ebft cho 2.\n # Trong tr\u01b0\u1eddng h\u1ee3p \u0111\u1eb7t bi\u1ec7t n\u00e0y, d\u00e3y s\u1ed1 c\u00f3 th\u1ec3 c\u00f3 ho\u1eb7c kh\u00f4ng c\u00f3 t\u1eeb li\u00ean k\u1ebft h\u00e0ng ch\u1ee5c l\u00e0 t\u1eeb 'm\u01b0\u01a1i'...\n # vd:\n # 032 -> 'kh\u00f4ng ba m\u01b0\u01a1i hai' -> kh\u00f4ng \u0111\u01b0\u1ee3c ph\u00e9p (s\u1ed1 l\u01b0\u1ee3ng ph\u1ea7n t\u1eed s\u1ed1 ban \u0111\u1ea7u l\u1ebd) -> \u0111\u1ea7u ra kh\u00f4ng ch\u00ednh x\u00e1c.\n # 0324 -> 'kh\u00f4ng ba m\u01b0\u01a1i hai b\u1ed1n' -> kh\u00f4ng \u0111\u01b0\u1ee3c ph\u00e9p (kh\u00f4ng ph\u1ea3i c\u00e1ch \u0111\u1ecdc t\u1eebng c\u1eb7p s\u1ed1 m\u1ed9t) -> \u0111\u1ea7u ra kh\u00f4ng ch\u00ednh x\u00e1c\n # 0324 -> 'kh\u00f4ng ba hai m\u01b0\u01a1i b\u1ed1n' -> Ok\n >>> text = 'hai m\u01b0\u01a1i ba b\u1ea3y t\u00e1m m\u01b0\u01a1i b\u1ed1n n\u0103m b\u1ed1n ch\u00edn m\u01b0\u01a1i m\u1ed1t m\u01b0\u1eddi hai b\u1ea3y n\u0103m'\n\n >>> w2n_couple(text)\n 20378454911275\n\n\n****************************************\n3. S\u1ed1 sang ch\u1eef s\u1ed1 c\u00f3 t\u1eeb li\u00ean k\u1ebft\n****************************************\n\n.. image:: https://img.shields.io/badge/feature-number%20to%20word-yellow\n\n| Chuy\u1ec3n \u0111\u1ed5i **S\u1ed1** sang **Ch\u1eef s\u1ed1** c\u1ea7n c\u00f3 c\u00e1c t\u1eeb li\u00ean k\u1ebft nh\u01b0 ('m\u01b0\u01a1i', 'tr\u0103m', 'ngh\u00ecn', 'tri\u1ec7u', 't\u1ef7').\n| S\u1eed d\u1ee5ng ph\u00f9 h\u1ee3p trong c\u00e1c tr\u01b0\u1eddng h\u1ee3p nh\u01b0: gi\u00e1 s\u1ea3n ph\u1ea9m, \u0111\u01a1n v\u1ecb ti\u1ec1n t\u1ec7, s\u1ed1 tu\u1ed5i...,\n| H\u1ed7 tr\u1ee3 v\u0103n n\u00f3i cho c\u00e1c t\u1eeb nh\u01b0 'm\u1ed9t - m\u1ed1t', 'n\u0103m - l\u0103m', 'l\u1ebd - linh'...\n\n.. code-block:: python\n\n >>> # -*- coding: utf-8 -*-\n >>> from vietnam_number import n2w\n\n >>> number = '115205201211'\n >>> n2w(number)\n 'm\u1ed9t tr\u0103m m\u01b0\u1eddi l\u0103m t\u1ef7 hai tr\u0103m l\u1ebd n\u0103m tri\u1ec7u hai tr\u0103m l\u1ebd m\u1ed9t ngh\u00ecn hai tr\u0103m m\u01b0\u1eddi m\u1ed9t'\n\n\n # h\u1ed7 tr\u1ee3 m\u1ed9t s\u1ed1 tr\u01b0\u1eddng h\u1ee3p c\u00f3 c\u00e1ch \u0111\u1ecdc \u0111\u1eb7c bi\u1ec7t\n >>> list_number = ['111', '200', '101', '121', '815', '805', '825']\n >>> for element in list_number:\n ... print(n2w(element))\n ...\n 'm\u1ed9t tr\u0103m m\u01b0\u1eddi m\u1ed9t'\n 'hai tr\u0103m'\n 'm\u1ed9t tr\u0103m l\u1ebd m\u1ed9t'\n 'm\u1ed9t tr\u0103m hai m\u01b0\u01a1i m\u1ed1t'\n 't\u00e1m tr\u0103m m\u01b0\u1eddi l\u0103m'\n 't\u00e1m tr\u0103m l\u1ebd n\u0103m'\n 't\u00e1m tr\u0103m hai m\u01b0\u01a1i l\u0103m'\n\n\n****************************************\n4. S\u1ed1 sang ch\u1eef s\u1ed1 kh\u00f4ng c\u00f3 t\u1eeb li\u00ean k\u1ebft\n****************************************\n\n.. image:: https://img.shields.io/badge/feature-number%20to%20word-yellow\n\n| Chuy\u1ec3n \u0111\u1ed5i **S\u1ed1** sang **Ch\u1eef s\u1ed1** kh\u00f4ng c\u1ea7n c\u00f3 c\u00e1c t\u1eeb li\u00ean k\u1ebft.\n| S\u1eed d\u1ee5ng ph\u00f9 h\u1ee3p trong c\u00e1c tr\u01b0\u1eddng h\u1ee3p m\u1ed9t chu\u1ed7i nhi\u1ec1u s\u1ed1 kh\u00e1c nhau nh\u01b0: s\u1ed1 ch\u1ee9ng minh th\u01b0, s\u1ed1 visa, s\u1ed1 th\u1ebb ATM, s\u1ed1 \u0111i\u1ec7n tho\u1ea1i, t\u00e0i kho\u1ea3n ng\u00e2n h\u00e0ng...\n\n.. code-block:: python\n\n >>> # -*- coding: utf-8 -*-\n >>> from vietnam_number import n2w_single\n\n # Chuy\u1ec3n \u0111\u1ed5i t\u1eebng s\u1ed1 m\u1ed9t.\n >>> number = '0908123456'\n >>> n2w_single(number)\n 'kh\u00f4ng ch\u00edn kh\u00f4ng t\u00e1m m\u1ed9t hai ba b\u1ed1n n\u0103m s\u00e1u'\n\n # H\u1ed7 tr\u1ee3 cho s\u1ed1 c\u00f3 \u0111\u1ea7u s\u1ed1 l\u00e0 '+84'\n >>> number = '+84908123456'\n >>> n2w_single(number)\n 'kh\u00f4ng ch\u00edn kh\u00f4ng t\u00e1m m\u1ed9t hai ba b\u1ed1n n\u0103m s\u00e1u'\n\n\nT\u00ednh N\u0103ng Trong T\u01b0\u01a1ng Lai\n----------------------------------------\n\n* H\u1ed7 tr\u1ee3 s\u1ed1 th\u1eadp ph\u00e2n.\n* H\u1ed7 tr\u1ee3 s\u1ed1 \u00e2m.\n* Chuy\u1ec3n \u0111\u1ed5i s\u1ed1 th\u1ee9 t\u1ef1\n* Chuy\u1ec3n \u0111\u1ed5i ng\u00e0y th\u00e1ng n\u0103m\n* Chuy\u1ec3n \u0111\u1ed5i \u0111\u01a1n v\u1ecb \u0111o kh\u1ed1i l\u01b0\u1ee3ng (g - kg - y\u1ebfn - t\u1ea1 - t\u1ea5n)\n* Chuy\u1ec3n \u0111\u1ed5i \u0111\u01a1n v\u1ecb \u0111o \u0111\u1ed9 d\u00e0i (mm - cm - m - km)\n\n\u0110\u00f3ng G\u00f3p\n----------------------------------------\n\nTh\u00f4ng b\u00e1o l\u1ed7i :beetle: t\u1ea1i https://github.com/ngthuong45/vietnam-number/issues\n\nN\u1ebfu b\u1ea1n ph\u00e1t hi\u1ec7n m\u1ed9t l\u1ed7i m\u1edbi, vui l\u00f2ng th\u00f4ng b\u00e1o \u0111\u00ednh k\u00e8m c\u00e1c th\u00f4ng tin:\n\n* Th\u00f4ng tin h\u1ec7 \u0111i\u1ec1u h\u00e0nh c\u1ee7a b\u1ea1n.\n* Nh\u1eefng thi\u1ebft l\u1eadp \u1edf local n\u1ebfu c\u00f3.\n* C\u00e1c b\u01b0\u1edbc chi ti\u1ebft d\u1eabn \u0111\u1ebfn ph\u00e1t hi\u1ec7n l\u1ed7i.\n\n|\n\n*\u0110\u1ec3 l\u1ea1i m\u1ed9t sao :star: n\u1ebfu th\u01b0 vi\u1ec7n gi\u00fap \u00edch \u0111\u01b0\u1ee3c ph\u1ea7n n\u00e0o cho c\u00f4ng vi\u1ec7c c\u1ee7a b\u1ea1n nh\u00e9!.*\n",
"bugtrack_url": null,
"license": "GPL-3.0-or-later",
"summary": "Th\u01b0 vi\u1ec7n x\u1eef l\u00fd ch\u1eef s\u1ed1 d\u00e0nh ri\u00eang cho Ti\u1ebfng Vi\u1ec7t - H\u1ed7 tr\u1ee3 chuy\u1ec3n \u0111\u1ed5i cho c\u1ea3 v\u0103n n\u00f3i v\u00e0 v\u0103n vi\u1ebft",
"version": "1.0.4",
"project_urls": {
"Homepage": "https://github.com/ngthuong45/vietnam-number.git",
"Repository": "https://github.com/ngthuong45/vietnam-number.git"
},
"split_keywords": [
"vietnam",
" number",
" w2n",
" n2w",
" number to word",
" word to number",
" text to number",
" number to text"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "3d42923b89fdf6980562116392ef5315f822589cb8555d00e5dc90c9f95898cd",
"md5": "5b1e07ed3e61f97491b9ee28f5a81cae",
"sha256": "04286dcf23c9e50262117e39cf76a64d66906ab205970fdb0bb3a2c805641d8f"
},
"downloads": -1,
"filename": "vietnam_number-1.0.4-py3-none-any.whl",
"has_sig": false,
"md5_digest": "5b1e07ed3e61f97491b9ee28f5a81cae",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": "<4.0,>=3.9",
"size": 21943,
"upload_time": "2025-09-04T01:45:54",
"upload_time_iso_8601": "2025-09-04T01:45:54.137114Z",
"url": "https://files.pythonhosted.org/packages/3d/42/923b89fdf6980562116392ef5315f822589cb8555d00e5dc90c9f95898cd/vietnam_number-1.0.4-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "fdbbdd3a71751ba887839a4c7c6ba3c3f4d479223551a6a67acf8cfc33b9fb09",
"md5": "07203a11a6b1b3d294ce427ecb76a1a8",
"sha256": "0383b2c674ac966190c18eb71cce363ea7bc6cd3ca1cd2cffa535f15bee0257d"
},
"downloads": -1,
"filename": "vietnam_number-1.0.4.tar.gz",
"has_sig": false,
"md5_digest": "07203a11a6b1b3d294ce427ecb76a1a8",
"packagetype": "sdist",
"python_version": "source",
"requires_python": "<4.0,>=3.9",
"size": 14078,
"upload_time": "2025-09-04T01:45:55",
"upload_time_iso_8601": "2025-09-04T01:45:55.535405Z",
"url": "https://files.pythonhosted.org/packages/fd/bb/dd3a71751ba887839a4c7c6ba3c3f4d479223551a6a67acf8cfc33b9fb09/vietnam_number-1.0.4.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-09-04 01:45:55",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "ngthuong45",
"github_project": "vietnam-number",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "vietnam_number"
}