您的位置:首页 > 其它

11-22 对“大数字”的变形

2017-11-22 09:40 218 查看
将之前的大数字程序做一个变形,不再打印*,而是用对于的数字代替。

效果如下:

1      22222    3333       4      555    6666  77777777  8888   999999    0000
1 1     2     2  3    3     44    5       6             7 8    8 9      9  0    0
1     2    2        3    4 4    5       6            7  8    8 9      9 0      0
1         2      333    4  4     555    6 66 6      7    8888    999999 0      0
1        2          3  4444444       5  6    6     7    8    8        9 0      0
1       2      3    3      4         5  6    6    7     8    8       9   0    0
111    2222222   3333       4     555    6 66 6   7       8888       9     0000

代码:

import sys
Zero=["   ****   ",
"  *    *  ",
" *      * ",
" *      * ",
" *      * ",
"  *    *  ",
"   ****   ",]
One=[  "    *    ",
"  * *    ",
"    *    ",
"    *    ",
"    *    ",
"    *    ",
"   ***   ",]
Two=[  "  *****  ",
" *     * ",
" *    *  ",
"     *   ",
"    *    ",
"   *     ",
" ******* ",
]
Three=["  ****   ",
" *    *  ",
"      *  ",
"   ***   ",
"      *  ",
" *    *  ",
"  ****   ",]
Four=["    *   ",
"   **   ",
"  * *   ",
" *  *   ",
"******* ",
"    *   ",
"    *   ",]
Five=["   ***  ",
" *      ",
" *      ",
"  ***   ",
"      * ",
"      * ",
"  ***   ",]
Six=[ "  ****  ",
" *      ",
" *      ",
" * ** * ",
" *    * ",
" *    * ",
" * ** * ",]
Seven=["********",
"       *",
"      * ",
"     *  ",
"    *   ",
"   *    ",
"  *     ",]
Eight=["  ****  ",
" *    * ",
" *    * ",
"  ****  ",
" *    * ",
" *    * ",
"  ****  ",]
Nine=[ " ****** ",
"*      *",
"*      *",
"  ******",
"       *",
"      * ",
"     *  ",]
Digits=[Zero,One,Two,Three,Four,Five,Six,Seven,Eight,Nine]

def bigdigts(digit,Digits=Digits):
# print(Digits)
row=0
if len(digit)==0: print("ERROR")
else:
while row<7:
line=""
for i in digit:
# print(i)
for j in Digits[i][row]:
if  j=="*":
print(i,end="")
else:
print(j,end="")
print("")
row+=1

bigdigts([1,2,3,4,5,6,7,8,9,0])


这个是在前面的大数字程序上做修改的,要实现这个效果有两个办法:

把前面定义的数字的*改成对应的数字,不过这样写太死板了。
这里用的方法是不再先把字符串一次添加到一行再输出,而是逐个输出,当遇到*的时候就替换成对应的数字。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐