Python3开发随记(2)实例

<碎碎念>python

今天在公司终于把jQuery搜索插件的功能写完了,已经能实现同步GET提交查询参数并正确显示视图,重构了三遍本身才以为代码凑合能看,和高手仍是有距离的,继续努力吧。git

晚上继续看Python3,边看边写,开始。spa

</碎碎念>插件



Python3开发随记(2)实例命令行

这一部分会写一些小例子用来巩固前一篇的基础概念,顺便看一些新的知识点code


程序一

目的:

命令行调用程序并捕获命令行参数(一些数字),而后用星号的排列组合打印对应的数字orm


思路:

因为文本是逐行打印的,因此咱们须要每行打印出每一个数字的部分星号,直到打完最后一行。开发

定义每一个星号数字时咱们统一排版,每一个数字宽5个字符,高7行。同步

代码以下:it

import sys
Digits=[
      [ " *** ",
	"*   *",
	"*   *",
	"*   *",
	"*   *",
	"*   *",
	" *** "],
      [ "  *  ",
	" **  ",
	"  *  ",
	"  *  ",
	"  *  ",
	"  *  ",
	" *** "],
      [ " *** ",
	"*   *",
	"    *",
	"   * ",
	"  *  ",
	" *   ",
	"*****"],
      [ " *** ",
	"*   *",
	"    *",
	"  ** ",
	"    *",
	"*   *",
	" *** "],
      [ "    *",
	"   **",
	"  * *",
	" *  *",
	"*****",
	"    *",
	"    *"],
      [ " *** ",
	"*    ",
	"*    ",
	" *** ",
	"    *",
	"    *",
	" *** "],
      [ " *** ",
	"*    ",
	"*    ",
	"**** ",
	"*   *",
	"*   *",
	" *** "],
	["*****",
	"    *",
	"    *",
	"   * ",
	"  *  ",
	" *   ",
	"*    "],
       [" *** ",
	"*   *",
	"*   *",
	" *** ",
	"*   *",
	"*   *",
	" *** "],
      [ " *** ",
	"*   *",
	"*   *",
	" *** ",
	"    *",
	"    *",
	" *** "]
]

try:
    digits = sys.argv[1]
    row = 0
    while row<7:
        line = ""
        column=0
        while column<len(digits):
            number=int(digits[column])
            digit=Digits[number]
            line+=digit[row]+""
            column+=1
        print(line)
        row+=1
except IndexError:
	print("usage:bigdigits.py <number>")
except ValueError as err:
	print(err,"in",digits)

这样就完成,实现方法就是逐行打印。这里有个小技巧,咱们在Digits中定义星型数字时候,index等于0的星星数字就是零,以此类推,那么咱们取数字的时候直接使用命令行传进来的数字作index就能够获得星型数字阵列了。最外层的while循环是从0至6,表明从星型数字的1至7层。

看看结果:

小结:

参看代码:

  1. 导入模块=>import

  2. 使用sys模块argv方法获取命令行参数

  3. 异常捕获的基本使用

         try:

               ...

         except <Some Error>:

               ...

  4. while循环


未完,待续......

相关文章
相关标签/搜索