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方法设置绘制速,不然容易等哭。


  • 相关阅读:
    86. Partition List
    2. Add Two Numbers
    55. Jump Game
    70. Climbing Stairs
    53. Maximum Subarray
    64. Minimum Path Sum
    122. Best Time to Buy and Sell Stock II
    以场景为中心的产品设计方法
    那些产品经理犯过最大的错
    Axure教程:如何使用动态面板?动态面板功能详解
  • 原文地址:https://www.cnblogs.com/xiegalpha/p/9231668.html
Copyright © 2011-2022 走看看