|  | 
 
 
 楼主|
发表于 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() # 运行程序
 | 
 |