python打印九九乘法表以及边长为n的正方形

1.九九乘法表
第一种方法

for i in range(1,10):
    for j in range(1,i+1):
        print(str(j)+"*"+str(i)+"="+str(i*j),end=" ")
    print()

注:每打印出一行,默认会进行换行,默认是输出结果就会进行换行。但是加上(end=” “)不会进行换行,
print()针对于迭代for j in range(1,i+1):之后循环进行换行。

第二种方法

for i in range(1,10):
    line = " "
    for j in range(1,i+1):
        line += "{}*{}={:<3}".format(j,i,i*j)
    print(line)

注:format前面三个花括号和后面的字符一 一对应,其中(:<)冒号是分割符号,<代表左对齐。2 代表宽度。
第三种方法

for i in range(1,10):
    line = ""
    for j in range(1,10):
        if j>i:
            break
        line += str(j)+"*"+str(i)+"="+str(i*j)+" "
    print(line)

2,打印出边长为n的正方形
第一种方法

a =  int(input("da"))
for i in range(a):
    if i == 0 or i == (a -1):
        print("*"*a)
    else:
        print("*"+" "*(a-2)+"*")

注:i 取值为0 , 1, 2, 3, 4
if 语句满足条件只有0 和4 ,print(“*”*a)循环两次
其他当 i 等于1 , 2 , 3 时,print(““+” “(a-2)+”“)循环3次。其中” “(a-2) 空格符为固定值。

第二种方法

a = int(input("a"))
for i in range(1,a+1):
    if i == 1 or i == a:
        print("*"*a)
    else:
        print("*"+" "*(a-2)+"*")

猜你喜欢

转载自blog.csdn.net/qyk1995/article/details/81429468
今日推荐