iT邦幫忙

2021 iThome 鐵人賽

DAY 20
0
自我挑戰組

實驗室助理的技術文章自我整理系列 第 20

Python - Python num2words 套件 - 將數字轉換為多種語言的單詞 - 參考筆記

  • 分享至 

  • xImage
  •  

Python - Python num2words 套件 - 將數字轉換為多種語言的單詞 - 參考筆記

參考資料

參考資料:num2words

說明

如題,當初會寫這篇參考筆記的主要原因,是因為 num2words 套件的官方文件是英文版的文章,所以我就節錄其中一部分,比較會需要用到的內容,做個簡單的翻譯,以產出繁體中文版的安裝&使用教學文章,但文章內容可能不會太多,請見諒XD。

特此撰寫本篇文章作為紀錄文件,用以方便後續有需要的時候,可以快速的重複查閱,雖然後面比較沒有什麼機會再用到,但也算是一個還不錯的經驗。

簡介

num2words 是一個可以將數字轉換為文字的函式庫。
例如:42->forty-two,它也支援多種語言(有關語言的完整列表,請參見下面的列表)。
同時也可以產生序數 (first、second、third)。

如果不知道序數是什麼的話,可以參考這篇:英文序數寫法與唸法 Ordinal Numbers

安裝 num2words 套件

安裝 num2words 套件的最簡單方法是使用 pip3 套件安裝指令:

pip3 install num2words

使用 num2words 套件

num2words 只有一個函數 num2words 可以使用。

範例程式碼如下:

>>> from num2words import num2words
>>> num2words(42)
forty-two
>>> num2words(42, to='ordinal')
forty-second
>>> num2words(1, to='ordinal_num')
1st
>>> num2words(42, lang='fr')
quarante-deux
>>> num2words(1998,to='year')
nineteen ninety-eight

除了數值參數外,還有兩個主要的可選參數。

to:選擇要轉換成什麼,支援的參數值有:

  • cardinal (預設)
  • ordinal (序數)
  • ordinal_num (用阿拉伯數字表達序數)
  • year (西元年分轉換)
  • currency (貨幣值轉換)

lang:選擇要轉換的語言,支援的參數值有:

  • en(英語,默認)
  • ar(阿拉伯語)
  • cz(捷克文)
  • de(德文)
  • dk(丹麥文)
  • en_GB(英語-英國)
  • en_IN(英語-印度)
  • es(西班牙語)
  • es_CO(西班牙語-哥倫比亞)
  • es_VE(西班牙語-委內瑞拉)
  • eu(歐洲)
  • fi(芬蘭語)
  • fr(法文)
  • fr_CH(法國-瑞士)
  • fr_BE(法國-比利時)
  • fr_DZ(法語-阿爾及利亞)
  • he(希伯來語)
  • id(印尼文)
  • it(意大利語)
  • ja(日語)
  • kn(卡納達語)
  • ko(韓文)
  • lt(立陶宛語)
  • lv(拉脫維亞語)
  • no(挪威文)
  • pl(波蘭語)
  • pt(葡萄牙語)
  • pt_BR(葡萄牙語-巴西)
  • sl(斯洛文尼亞)
  • sr(塞爾維亞文)
  • ro(羅馬尼亞語)
  • ru(俄語)
  • tr(土耳其文)
  • th(泰國)
  • vi(越南語)
  • nl(荷蘭語)
  • uk(烏克蘭)

上一篇
Python - 安裝 PyAudio 套件報錯解決方式參考筆記
下一篇
Python - Python Selenium 套件使用參考筆記
系列文
實驗室助理的技術文章自我整理30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言