|

楼主 |
发表于 2020-5-11 14:06:36
|
显示全部楼层
没人吗,那我发代码啦?
代码:
- class Program(): # 创建对象,把整个程序弄成一个对象
- def __init__(self): # 创建__init__方法
- answer = input('请输入一个正整数,最大也不能超过10000: ') # 获得输入
- if answer.isdigit(): # 对那些不听话的小娃娃进行判断
- num = int(answer) # 创建变量,继续判断
- if num < 10000 and num > 0: # 继续判断
- print(self.look(self.split(num))) # 输出(使用两个其他的方法)
- else: # 继续判断
- print('不符合要求') # 对娃娃进行教育
- else: # 对那些不听话的小娃娃进行判断
- print('不符合要求') # 对娃娃进行教育
- def split(self, num): # 创建split方法
- string = '' # 初始化变量
- for index, item in enumerate(str(num)): # 循环
- string += item + ('0' * ((len(str(num))) - (index + 1))) # 对数字进行分析
- if not index + 1 == len(str(num)): # 判断
- string += '-' # 对string进行分段
-
- return string # 返回string
- def look(self, string): # 创建look方法
- String = '' # 初始化变量
- DictNum = {1: '十', 2: '百', 3: '千'} # 初始化字典
- DictString = {1: '一', 2: '二', 3: '三', 4:'四', 5:'五', 6: '六', 7:'七', 8:'八', 9: '九', 0: '零'} # 初始化字典
- List = string.split('-') # 初始化列表
- for each in List: # 循环
- if int(each.count('0')): # 判断
- String += (DictString[int(each[0])] + (DictNum[each.count('0')])) # 计算并分析(比else分析的复杂一些)
- else: # 判断
- String += DictString[int(each)] # 计算并分析
- return String # 返回String
- if __name__ == '__main__': # 初始化执行程序
- program = Program() # 运行程序
复制代码 |
|