给Python新手的一个小程序
Python新手最好的学习方式就是 ——多练习OK, 今天,大佬来给新手出一道特别简单的程序(对大佬来说简单透了,不知初学者如何):
让用户输入一个不到10000的数,然后把数转换成中文,例子:
输入13,得到十三
输入678,得到六百七十八,
输入9842,得到九千八百四十二。
初学者马上思考,这是一个好玩的程序。暂时不发代码,大家先思考(有代码,只不过忘加注释了,一会告诉大家!)
禁止转载,大佬勿喷 占楼 没人吗,那我发代码啦?
代码:
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)] + (DictNum)) # 计算并分析(比else分析的复杂一些)
else: # 判断
String += DictString # 计算并分析
return String # 返回String
if __name__ == '__main__':# 初始化执行程序
program = Program() # 运行程序
这个不是新手做的题吧,都扯到对象上面了……{:10_245:} 我忽然发现一个BUG{:5_109:}
不是八千四百一十吗?
页:
[1]