用python 打印九九乘法表,代码如下:

第1种方式: 使用for-for

# 九九乘法表
for i in range(1, 10):
    for j in range(1, i+1):
        print(f'{j}x{i}={i*j}\t', end='')
    print()

执行结果如下图:

python九九乘法口诀 python 九九乘法_python

第2种方式: 使用while-while

# 九九乘法表
i = 1
while i <= 9:
    j = 1
    while(j <= i):    # j的大小是由i来控制的
        print(f'{i}*{j}={i*j}', end='\t')
        j += 1
    print('')
    i += 1

执行结果如下图:

python九九乘法口诀 python 九九乘法_代码优化_02

第3种方式: 使用while-for

i = 1
while i <= 9:
    for j in range(1, i+1):  # range()函数左闭右开
        print(f'{i}*{j}={i*j}', end=' ')
    i += 1
    print()

python九九乘法口诀 python 九九乘法_python经典编程案例_03

第4种方式: 使用for-while

for i in range(1, 10):
    j = 0
    while j < i:
        j += 1
        print(f"{i}*{j}={i*j}", end=' ')
    print()

python九九乘法口诀 python 九九乘法_python九九乘法口诀_04

第5种方式: 定义一个变量a

a = [1, 2, 3, 4, 5, 6, 7, 8, 9]
for i in a:
    j = 1
    while j <= i:
        print(f'{i}*{j}={i*j}', end='\t')
        # %-3d 是控制输出结果占据3位,且从左面开始对齐
        j += 1
    print()

执行结果如下图:

python九九乘法口诀 python 九九乘法_python经典编程案例_05

第6种方式: 使用递归

def multiplication(n):
	if n < 10:
		for m in range(1, n+1):
			print(f"{m}*{n}={m*n}", end="\t")
		print()
		multiplication(n+1)


multiplication(1)

执行结果如下:

python九九乘法口诀 python 九九乘法_代码优化_06

第7种方式: 使用1行语句

print('\n'.join([' '.join(["%2s x%2s = %2s" % (j, i, i*j) for j in range(1, i+1)]) for i in range(1, 10)]))

上面的一行代码优化之后:

print('\n'.join([' '.join([f"{j}x{i}={i*j}" for j in range(1, i + 1)]) for i in range(1, 10)]))

执行结果如下图:

python九九乘法口诀 python 九九乘法_python九九乘法口诀_07