Python打印九九乘法表的五种方式
关键点:外循环控制行,内循环控制列,列数取决于行数(第一行一列,第二行二列……)
方式一:for循环
for i in range(1, 10):
for j in range(1, 10):
if i >= j:
print("{}*{}={}".format(j, i, j * i), end= )
print()
方式二:for循环
for i in range(1, 10):
for j in range(1, i + 1):
# print("{}*{}={}".format(i, j, i*j), end= )
print("{0}*{1}={2}".format(j, i, j * i), end= )
print()
方式三:while循环
row = 1
while row <= 9:
column = 1
while column <= row:
print({}*{}={}.format(column, row, row * column), end= )
column += 1
print()
row += 1
方式四:列表表达式
L =
.join(
[ .join([{}*{}={}.format(column, row, row * column) for column in range(1, row + 1)]) for row in range(1, 10)])
print(L)
方式五:递归算法
def multi(i):
if i <= 9:
for j in range(1, i + 1):
print("{}*{}={}".format(j, i, j * i), end=" ")
print()
multi(i + 1)
multi(1)
放在一块
#!/usr/bin/env python
# -*- encoding:utf-8 -*-
# author:ttt
# 方式一:for循环
for i in range(1, 10):
for j in range(1, 10):
if i >= j:
print("{}*{}={}".format(j, i, j * i), end= )
print()
print("分割线".center(100, -))
# 方式二: for循环
for i in range(1, 10):
for j in range(1, i + 1):
# print("{}*{}={}".format(i, j, i*j), end= )
print("{0}*{1}={2}".format(j, i, j * i), end= )
print()
print("分隔线".center(100, -))
# 方式三:while循环
row = 1
while row <= 9:
column = 1
while column <= row:
print({}*{}={}.format(column, row, row * column), end= )
column += 1
print()
row += 1
print("分隔线".center(100, -))
# 方式四:列表表达式
L =
.join(
[ .join([{}*{}={}.format(column, row, row * column) for column in range(1, row + 1)]) for row in range(1, 10)])
print(L)
print("分隔线-".center(100, -))
# 方式五:递归算法
def multi(i):
if i <= 9:
for j in range(1, i + 1):
print("{}*{}={}".format(j, i, j * i), end=" ")
print()
multi(i + 1)
multi(1)
实现效果:
关键点:外循环控制行,内循环控制列,列数取决于行数(第一行一列,第二行二列……) 方式一:for循环 for i in range(1, 10): for j in range(1, 10): if i >= j: print("{}*{}={}".format(j, i, j * i), end= ) print() 方式二:for循环 for i in range(1, 10): for j in range(1, i + 1): # print("{}*{}={}".format(i, j, i*j), end= ) print("{0}*{1}={2}".format(j, i, j * i), end= ) print() 方式三:while循环 row = 1 while row <= 9: column = 1 while column <= row: print({}*{}={}.format(column, row, row * column), end= ) column += 1 print() row += 1 方式四:列表表达式 L = .join( [ .join([{}*{}={}.format(column, row, row * column) for column in range(1, row + 1)]) for row in range(1, 10)]) print(L) 方式五:递归算法 def multi(i): if i <= 9: for j in range(1, i + 1): print("{}*{}={}".format(j, i, j * i), end=" ") print() multi(i + 1) multi(1) 放在一块 #!/usr/bin/env python # -*- encoding:utf-8 -*- # author:ttt # 方式一:for循环 for i in range(1, 10): for j in range(1, 10): if i >= j: print("{}*{}={}".format(j, i, j * i), end= ) print() print("分割线".center(100, -)) # 方式二: for循环 for i in range(1, 10): for j in range(1, i + 1): # print("{}*{}={}".format(i, j, i*j), end= ) print("{0}*{1}={2}".format(j, i, j * i), end= ) print() print("分隔线".center(100, -)) # 方式三:while循环 row = 1 while row <= 9: column = 1 while column <= row: print({}*{}={}.format(column, row, row * column), end= ) column += 1 print() row += 1 print("分隔线".center(100, -)) # 方式四:列表表达式 L = .join( [ .join([{}*{}={}.format(column, row, row * column) for column in range(1, row + 1)]) for row in range(1, 10)]) print(L) print("分隔线-".center(100, -)) # 方式五:递归算法 def multi(i): if i <= 9: for j in range(1, i + 1): print("{}*{}={}".format(j, i, j * i), end=" ") print() multi(i + 1) multi(1) 实现效果: