2012-12-06 38 views
0

我有一個相當簡單的程序,它從文件系統上的文件中獲取值,並允許用戶格式化並打印它們。腳本的平均調用看起來是這樣的:允許將Unicode轉義輸入爲命令行參數

get-amazing-temperature -c 0 --format "%.2f" 

我使用format參數值的格式,以便腳本的用戶可以巧妙的,創造性的方式格式化數字。當然,問題出現在他們想要使用度(U + 00B0)符號的自定義格式。

我在引擎蓋下面使用了​​。當我嘗試這樣的事:在命令行參數

36\u00B0 

我怎麼能允許的Unicode文本:

get-amazing-temperature -c 0 --format '%.2f\u00B0' 

...字符串文字打印?我只會在Linux/Unix機器上運行這個腳本。

回答

2

處理包含格式字符串的參數時,可以使用「unicode-escape」編解碼器對其進行解碼。這會將Unicode轉義轉換爲相應的字符:

>>> print x 
%.2f\u00B0 
>>> print x.decode('unicode-escape') 
%.2f° 
相關問題