Python习题:九九乘法表(持续更新)
Python——九九乘法表题目考察代码及实现过程解法初探方法1:方法2:题目编写程序,输出如下图所示的九九乘法表:考察for循环、字符串格式化代码及实现过程解法初探for i in range(1,10):for j in range(1,i+1):print('{}x{}={}'.format(j,i,i*j))部分输出如下:1x1=11x2=22x2=41x3=32x3=63x3=91x4=4
·
题目
编写程序,输出如下图所示的九九乘法表:
考察
for循环、字符串格式化
代码及实现过程
解法初探
方法本质为双for循环嵌套,其中还利用到了字符串格式化:字符串格式化用法
for i in range(1,10):
for j in range(1,i+1):
print('{}x{}={}'.format(j,i,i*j))
print('')
部分输出如下:
1x1=1
1x2=2
2x2=4
1x3=3
2x3=6
3x3=9
1x4=4
2x4=8
3x4=12
4x4=16
1x5=5
2x5=10
3x5=15
4x5=20
5x5=25
1x6=6
2x6=12
...
输出结果不理想,没有实现题目要求的格式,但似乎只需要让每一部分不自动换行就可以实现目标…
方法1
考虑到上述问题,可以参考以下文章进行代码改进优化:“\n”、“\t”、“end”的用法
利用end = "
可以达到不换行的目的
for i in range(1,10):
for j in range(1,i+1):
print('{}x{}={}\t'.format(j,i,i*j),end='')
# print('{}x{}={}'.format(j,i,i*j),end=' ') # 此写法也行
# print(f'{j}x{i}={i*j}', end=' ') # 此写法也行
print('')
输出:
1x1=1
1x2=2 2x2=4
1x3=3 2x3=6 3x3=9
1x4=4 2x4=8 3x4=12 4x4=16
1x5=5 2x5=10 3x5=15 4x5=20 5x5=25
1x6=6 2x6=12 3x6=18 4x6=24 5x6=30 6x6=36
1x7=7 2x7=14 3x7=21 4x7=28 5x7=35 6x7=42 7x7=49
1x8=8 2x8=16 3x8=24 4x8=32 5x8=40 6x8=48 7x8=56 8x8=64
1x9=9 2x9=18 3x9=27 4x9=36 5x9=45 6x9=54 7x9=63 8x9=72 9x9=81
方法2
方法2与方法1本质一样,不同处为版本更新带来的语法差异,现版本多用上述str.format()
进行“字符串格式化”,而旧版本则用d
:
for i in range(1,10):
for j in range(1,i+1):
print('%dx%d=%d' % (j,i,i*j),end=' ')
print('')
输出:
1x1=1
1x2=2 2x2=4
1x3=3 2x3=6 3x3=9
1x4=4 2x4=8 3x4=12 4x4=16
1x5=5 2x5=10 3x5=15 4x5=20 5x5=25
1x6=6 2x6=12 3x6=18 4x6=24 5x6=30 6x6=36
1x7=7 2x7=14 3x7=21 4x7=28 5x7=35 6x7=42 7x7=49
1x8=8 2x8=16 3x8=24 4x8=32 5x8=40 6x8=48 7x8=56 8x8=64
1x9=9 2x9=18 3x9=27 4x9=36 5x9=45 6x9=54 7x9=63 8x9=72 9x9=81
参考资料:
https://cloud.tencent.com/developer/article/1559802
https://www.cnblogs.com/pychina/p/10171922.html
更多推荐
所有评论(0)