python初學者筆記(2):阿拉伯數字轉換成中文大寫

来源:http://www.cnblogs.com/DuShuSir/archive/2016/11/17/6074856.html

題:輸入一個數字,轉換成中文大寫的寫法 可運行的程式(Python 2.7.9): 註:剛剛學習的初級程式寫法,有很多不全的地方,比如:1.輸入“082”開頭是0的數字一樣會輸出“零佰扒拾貳”,應該需要更多的判斷語句;2.輸入“034354”會直接報錯,應該沒有加異常處理造成的結果。 後續會繼續學習 ...


題:輸入一個數字,轉換成中文大寫的寫法

可運行的程式(Python 2.7.9):

 1 # -*- coding: utf-8 -*- #在python2的py文件裡面寫中文,必須要添加一行聲明文件編碼的註釋,否則python2會預設使用ASCII編碼
 2 dic_num={"0":u"","1":u"","2":u"","3":u"","4":u"","5":u"","6":u"","7":u"","8":u"","9":u""}
 3 dic_unit={0:u"",1:u"",2:u"",3:u"",4:u""}
 4 
 5 flag = True
 6 
 7 while flag:#保證程式能反覆運行
 8     shu = []
 9     big = ''
10     num = raw_input("請輸入數字(範圍在1~99999之間),若輸入q則退出程式:".decode('utf-8').encode('gbk'))
11     if num == 'q' or num == 'Q':
12         flag = False
13     elif int(num) < 1 or int(num) > 99999:
14         print "錯誤!請輸入1~99999之間的數字!\n".decode('utf-8').encode('gbk')
15         continue
16     else:
17         listnum = list(num)
18         lennum = len(listnum)-1
19         for item in listnum:
20             shu.append(dic_num[item])#先取輸入數字中的第一個數對應的中文大寫加到shu列表裡,後續迴圈
21             shu.append(dic_unit[lennum])#例:4位數就取dic_unit中3對應的“仟”加到shu的第一個數字後面,後續迴圈
22             lennum -=1
23         big = ''.join(shu)
24     print big.encode('gbk')
25     print "\n"

註:剛剛學習的初級程式寫法,有很多不全的地方,比如:1.輸入“082”開頭是0的數字一樣會輸出“零佰扒拾貳”,應該需要更多的判斷語句;2.輸入“034354”會直接報錯,應該沒有加異常處理造成的結果。

    後續會繼續學習,歡迎大神補充更完善的寫法。


您的分享是我們最大的動力!

更多相關文章
  • byte tt=(byte)130 等於 -126 。 byte 占一個位元組,8bit 。第一位是符號位,0 表示正數,1 表示負數。因此byte 的取值範圍 [-128, 127] 。 130的二進位是00000000000000000000000010000010,截取成byte類型只保留後8位 ...
  • Django開髮網站需要遵循Django的一套開發流程。本節通過建立一個消息錄入頁面演示Django的開發流程及相關技術。 ...
  • 1 問題描述 利用Java EE相關技術實現一個簡單的Web聊天室系統,具體要求如下。 (1)編寫一個登錄頁面,登錄信息中有用戶名和密碼,分別用兩個按鈕來提交和重置登錄信息。 (2)編寫一個Servlet程式Main.java通過請求指派來處理用戶提交的登錄信息,如果用戶名為本小組成員的名字且密碼為 ...
  • python flask+gunicorn+nginx部署應用 ...
  • 1.添加Python群組 運行EditPlus,選擇工具→配置用戶工具進入參數設置框。 單擊添加工具→應用程式。菜單文字輸入python,命令為Python的安裝路徑,參數輸入 $(FileName),初始目錄輸入 $(FileDir),動作選擇 捕捉輸出。然後點擊確定。 2.設置Python高亮和 ...
  • 1. 在https://www.python.org/downloads/release/python-352/網站上下載python版本 2. 配置環境 右擊電腦屬性,然後選擇高級系統設置 3. 選擇環境變數,配置Path 輸入;C:\Users\小紅\AppData\Roaming\Micro ...
  • 兩者區別與作用: 普通任務:總調度(SchedulerFactoryBean)--> 定時調度器(CronTriggerFactoryBean) --> 調度明細自定義執行方法bean(MethodInvokingJobDetailFactoryBean) -->調度bean(我們定義的job類) ...
  • note eight 使用元類 動態語言和靜態語言最大的不同,就是函數和類的定義,不是編譯時定義的,而是運行時動態創建的。 程式的調試用logging 模塊 import logging 單元測試 為了編寫單元測試,我們需要引入pytho... ...
一周排行
  • 比如要拆分“呵呵呵90909086676喝喝999”,下麵當type=0返回的是中文字元串“呵呵呵,喝喝”,type=1返回的是數字字元串“90909086676,999”, private string GetStrings(string str,int type=0) { IList<strin ...
  • Swagger一個優秀的Api介面文檔生成工具。Swagger可以可以動態生成Api介面文檔,有效的降低前後端人員關於Api介面的溝通成本,促進項目高效開發。 1、使用NuGet安裝最新的包:Swashbuckle.AspNetCore。 2、編輯項目文件(NetCoreTemplate.Web.c ...
  • 2020 年 7 月 30 日, 由.NET基金會和微軟 將舉辦一個線上和為期一天的活動,包括 微軟 .NET 團隊的演講者以及社區的演講者。本次線上大會 專註.NET框架構建微服務,演講者分享構建和部署雲原生應用程式的最佳實踐、模式、提示和技巧。有關更多信息和隨時瞭解情況:https://focu... ...
  • #abp框架Excel導出——基於vue #1.技術棧 ##1.1 前端採用vue,官方提供 UI套件用的是iview ##1.2 後臺是abp——aspnetboilerplate 即abp v1,https://github.com/aspnetboilerplate/aspnetboilerp ...
  • 前言 本文的文字及圖片來源於網路,僅供學習、交流使用,不具有任何商業用途,版權歸原作者所有,如有問題請及時聯繫我們以作處理。 作者:碧茂大數據 PS:如有需要Python學習資料的小伙伴可以加下方的群去找免費管理員領取 input()輸入 Python提供了 input() 內置函數從標準輸入讀入一 ...
  • 從12年到20年,python以肉眼可見的趨勢超過了java,成為了當今It界人人皆知的編程語言。 python為什麼這麼火? 網路編程語言搜索指數 適合初學者 Python具有語法簡單、語句清晰的特點,這就讓初學者在學習階段可以把精力集中在編程對象和思維方法上。 大佬都在用 Google,YouT ...
  • 在社會上存在一種普遍的對培訓機構的學生一種歧視的現象,具體表現在,比如:當你去公司面試的時候,一旦你說了你是培訓機構出來的,那麼基本上你就涼了,那麼你瞞著不說,然後又通過了面試成功入職,但是以後一旦在公司被髮現有培訓經歷,可能會面臨被降薪,甚至被辭退,培訓機構出來的學生,在用人單位眼裡就是能力低下的 ...
  • from typing import List# 這道題看了大佬寫的代碼,經過自己的理解寫出來了。# 從最外圍的四周找有沒有為O的,如果有的話就進入深搜函數,然後深搜遍歷# 判斷上下左右的位置是否為Oclass Solution: def solve(self, board: List[List[s ...
  • import requests; import re; import os; # 1.請求網頁 header = { "user-agent":'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_5) AppleWebKit/537.36 (KHTML, li ...
  • import requests; import re; import os; import parsel; 1.請求網頁 header = { "user-agent":'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_5) AppleWebKit/537. ...