码迷,mamicode.com
首页 > 编程语言 > 详细

Programing in Python3(Second Edition)_实例

时间:2018-08-10 14:30:22      阅读:140      评论:0      收藏:0      [点我收藏+]

标签:没有   一次循环   inpu   时间   +=   second   image   异常处理   浮点   

Programming in Python3 (Second Edition)实例

  • 前言:在学习Python的过程中推荐一本书,《Programming in Python3 》也就是我以前用过的。推荐理由是这本书讲的很全面很详细,有一些非常实用的实例可以提供给读者学习,学完以后不仅知道会怎么用,还会知道Python代码在系统底层是怎么实现的。最后一点,这本书出版时间比较新,内容也跟得上潮流。以前我把这本书熟读了一遍之后但是没有把后面的实例在编译器上实现,先来补上。以下就是每一章节的实例代码和成功运行之后的效果截图。

Chapter One

#bigdigits.py 41072819
import sys
#coding:utf-8
Zero=[‘*****‘,‘*   *‘,‘*   *‘,‘*   *‘,‘*   *‘,‘*   *‘,‘*****‘]
One=[‘  *  ‘,‘ **  ‘,‘* *  ‘,‘  *  ‘,‘  *  ‘,‘  *  ‘,‘*****‘]
Two=[‘*****‘,‘    *‘,‘    *‘,‘*****‘,‘*    ‘,‘*    ‘,‘*****‘]
Three=[‘*****‘,‘    *‘,‘    *‘,‘*****‘,‘    *‘,‘    *‘,‘*****‘]
Four=[‘  *  ‘,‘ **  ‘,‘* *  ‘,‘*****‘,‘  *  ‘,‘  *  ‘,‘  *  ‘]
Five=[‘*****‘,‘*    ‘,‘*    ‘,‘*****‘,‘    *‘,‘    *‘,‘*****‘]
Six=[‘*****‘,‘*    ‘,‘*    ‘,‘*****‘,‘*   *‘,‘*   *‘,‘*****‘]
Seven=[‘*****‘,‘    *‘,‘    *‘,‘   * ‘,‘  *  ‘,‘ *   ‘,‘*    ‘]
Eight=[‘*****‘,‘*   *‘,‘*   *‘,‘*****‘,‘*   *‘,‘*   *‘,‘*****‘]
Nine=[‘*****‘,‘*   *‘,‘*   *‘,‘*****‘,‘    *‘,‘    *‘,‘*****‘]
Digits=[Zero,One,Two,Three,Four,Five,Six,Seven,Eight,Nine]#列表多层嵌套
try:
    digits=input("please input your number:")#读入数字
    row=0
    while row<7:
        line=""
        column=0
        while column<len(digits):#确定有几位数字
            number=int(digits[column])#读取第一个数字,如果输入的是浮点数进行强制转换
            digit=Digits[number]#第一个数字对应在Digits列表中的元素
            line+=digit[row]+" "
            """对第一个数字列表的第一个元素赋给line ,每一次循环都对下一个数字列表的第一个元素进行
            添加赋值给line,每个不同数字列表中的元素之间两个空格
    """
            column+=1
        print(line)
        row+=1
except ValueError as err:#如果用户输入错误的值进行异常处理,打印err
    print(err)

技术分享图片

#生成随机数的网格
import random

def get_int(msg,minimum,default):#输入
    while True:
        try:
            line=input(msg)
            if not line and default is not None:
                return default
            i=int(line)
            if i<minimum:
                print("must be>=",minimum)
            else:
                return i
        except ValueError as err:
            print(err)

rows=get_int("rows:",1,None)
columns=get_int("columns:",1,None)
minimum=get_int("minimum(or Enter for 0);",-10000,0)
#最大值的默认值为1000如果输入的数大于1000,默认值为两倍的minimum
default=1000
if default<=minimum:
    default=2*minimum
maximum=get_int("maximum(or Enter for "+str(default)+"):",minimum,default)
#双层循环输出行和列的数字
row=0   
while row<rows:
    line=""
    column=0
    while column<columns:
        i=random.randint(minimum,maximum)
        s=str(i)
        s+=" "
        line+=s
        column+=1
    print(line)
    row+=1

技术分享图片


2018/8/10 13:27:27

Programing in Python3(Second Edition)_实例

标签:没有   一次循环   inpu   时间   +=   second   image   异常处理   浮点   

原文地址:https://www.cnblogs.com/martin666/p/9454493.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!