python打印中文版九九乘法表——新手瞎搞,大佬轻喷

在python2中打出一个数字版的九九乘法表还是相当简单的,

for i in range (1, 10):
	for j in range (1, i+1):
		print "%s * %s = %s" %(j, i ,j*i),"\t",
	print

运行结果:
在这里插入图片描述那么怎么把这个表换成中文的呢?
在这里插入图片描述
小白的想法极其简单,把每个数字对应一个中文就好了,上代码`

#coding:UTF-8
#Author:LSH

Num = ["一","二", "三", "四", "五", "六", "七", "八", "九" ] #你得有一些中文

for j in range(1, 10):       #*************
    for k in range(1, j+1):  # 和上面一样这部分是用来算结果的
        c = j * k            #*************    
        
        if c < 10:           # 中文的乘法表10以内是不同的,例如一一得一,它多了一个得字
            e = Num[j-1]	 # e是一个中介,把j的值换成中文,而j依然是数字,下次循环j依然可以计算
            f = Num[k-1]	 # 同理
            b = Num[c-1]
            print f,e,"得",b,"\t",
            
        elif c == 10: 		 #这个我不知道怎么搞,就直接打出来了
            print "二 五 一 十","\t",
            
        elif c < 20:		 #(10,20)以内的
            c = c - 10
            e = Num[j-1]
            f = Num[k-1]
            b = Num[c-1]
            print f,e,"十",b,"\t", #想法很简单,把十几减去10就剩个位数,得字不要换成十,个位数字换中文
        
        # 以下都同理
        elif c == 20:
            print "四 五 二 十","\t",
            
        elif c < 30:
            c = c - 20
            e = Num[j-1]
            f = Num[k-1]
            b = Num[c-1]
            print f,e,"二 十",b,"\t",
            
        elif c == 30:
            print "五 六 三 十","\t",
            
        elif c < 40:
            c = c - 30
            e = Num[j-1]
            f = Num[k-1]
            b = Num[c-1]
            print f,e,"三 十",b,"\t",
            
        elif c == 40:
            print "五 八 四 十","\t",
            
        elif c < 50:
            c = c - 40
            e = Num[j-1]
            f = Num[k-1]
            b = Num[c-1]
            print f,e,"四 十",b,"\t",
            
        elif c == 40:
            print "五八四十","\t",
            
        elif c < 60:
            c = c - 50
            e = Num[j-1]
            f = Num[k-1]
            b = Num[c-1]
            print f,e,"五 十",b,"\t",
            
        elif c < 70:
            c = c - 60
            e = Num[j-1]
            f = Num[k-1]
            b = Num[c-1]
            print f,e,"六 十",b,"\t",
            
        elif c < 70:
            c = c - 60
            e = Num[j-1]
            f = Num[k-1]
            b = Num[c-1]
            print f,e,"六 十",b,"\t",
            
        elif c < 80:
            c = c - 70
            e = Num[j-1]
            f = Num[k-1]
            b = Num[c-1]
            print f,e,"七 十",b,"\t",
            
        else:
            print "九 九 八 十 一"
        
    print

运行结果就是上面那样
小白第一次尝试,这代码纯粹瞎搞,大佬勿喷,有什么改进的建议小弟欢迎至极!
感谢各位大佬阅完。

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值