zoukankan      html  css  js  c++  java
  • Po两段小代码,说几个小细节____关于九九乘法表&国际象棋棋盘

    # 欢迎拍砖、交流、指正

    # 九九(9*9)乘法表:

    code:

    for i in range(1, 10):
        j = 1
        while j <= i:   
            print("%d * %d = %2d" % (j, i, i * j), end=" ")
            j += 1
        print()

    1.上述代码使用 %2d  进行print的格式化输出;还有一个思路是使用制表符(\t),只需要将上述print语句修改如下:

    print("%d * %d = %d\t" % (j, i, i * j), end=" ")

    print("%d * %d = %d" % (j, i, i * j), end="\t")

    其实,“\t”就是 保持列对齐,从字符的最左侧开始,所以有些时候,字符太长,用“\t”会超出。

    运行结果如下:


    注意:  对齐的差异。总之,这两种方式都可以对齐,但是如果不做处理,运行的结果可能就是这样:


    细看之下,方可发现区别。


    demo2:turtle库绘制国际象棋棋盘

    绘制结果:             实话说,太像马赛克


    code:

    # 题目:要求输出国际象棋棋盘。
    import turtle as t
    
    t.hideturtle()
    t.speed(10)
    t.pu()
    t.goto(-100, -100)
    t.pd()
    color_list = ['black', 'white']
    for v_square in range(1, 9):
        for l_square in range(1, 9):  # 打印一行方块
            t.begin_fill()
            for line in range(1, 5):  # 打印一个方块
                t.fd(25)
                t.left(90)
            if l_square % 2 != 0:
                t.fillcolor(color_list[0])
            else:
                t.fillcolor(color_list[1])
            t.end_fill()
            t.up()
            t.fd(line * 25 / 4)
            t.pd()
        t.pu()
        t.goto(-100, (-100 + v_square * 25))
        t.pd()
        color_list[0], color_list[1] = color_list[1], color_list[0]
    t.done()

    细节如下:

            --1.几个循环嵌套的情况,内部的for循环很容易执行最后结果是迭代的最后一个数据,这里容易弄混,尤其再这个数据是大循环的某个变量的参数时。比如下列语句为何在程序中要”/4“,这里关于这个细节后续会写一个爬虫案例,来更好的演示。

    t.fd(line * 25 / 4)

            --2. python的变量标记的数据相互交换,不需要使用传统的”冒泡“法(引入一个空的变量c),只需要写出如下语句。此题用了列表的元素交换。这是python语言的简洁之处,实际上python这里是用了  tuple 的思想。

    a, b = b, a

            --3. 最好用speed方法设置绘制速,不然容易等哭。


  • 相关阅读:
    迭代器,生成器的理解
    需求
    关于dom 0级 2级 3级事件的理解
    夯实前端基础
    前端面试题 收集
    前端易忘点,持续更新
    form target 文件上传
    ES6 symbol
    bzoj1260 [CQOI2007]涂色paint
    bzoj1083 [SCOI2005]繁忙的都市
  • 原文地址:https://www.cnblogs.com/xiegalpha/p/9231668.html
Copyright © 2011-2022 走看看