大多数在学python的同学,都会有这样一个问题,什么都是一看就会,一实践操作就废,这种往往还是代码敲少了,一定要多去自己完成一个项目,那样才会有效果。
加油!!!
首先,我们来回忆一下99乘法表长什么样子吧
然后是需要用到的知识点:
1.for 循环
2.range函数
3.format 格式字符串
4.print 函数
源代码:
# 外层for循环代表打印9行for i in range(1, 10): # 内层for循环打印列 # 第一行1列,第而行2列,以此类推 for j in range(1, i+1): # 格式化 输出{行}x{列}={行乘列} print('{}x{}={}\t'.format(j, i, i*j), end='') print()
结果九九乘法表
前备知识分解
range
python range() 函数可创建一个整数列表,一般用在 for 循环中。
函数语法
range(start, stop[, step])
start: 计数从 start 开始。默认是从 0 开始。例如range(5)等价于range(0, 5);
stop: 计数到 stop 结束,但不包括 stop。例如:range(0, 5) 是[0, 1, 2, 3, 4]没有5
step:步长,默认为1。例如:range(0, 5) 等价于 range(0, 5, 1)
举例
>>>range(10) # 从 0 开始到 10[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]>>> range(1, 10) # 从 1 开始到 10[1, 2, 3, 4, 5, 6, 7, 8, 9]
format
str.format(),它增强了字符串格式化的功能。
基本语法是通过 {}
举例
"{}--{}".format("hello", "world") # 不设置指定位置,按默认顺序'hello--world'
for循环
这里用一个动图演示for循环
for循环.gif
九九乘法表分解
输出0-9
for i in range(1, 10): print(i)
输出结果
123456789
1到9不换行
print默认执行就会以换行结尾
有个end参数,告诉print函数以 空字符串结尾 (输出不换行)
for i in range(1,10): print(i,end='')
输出结果
123456789
有缩进
在python 字符串中 \t 代表一个tab缩进
for i in range(1,10): print(i,"\t",end='')
输出结果:¨G9G **有缩进 第二个写法** ¨G10G
输出结果还是一致的:
1 2 3 4 5 6 7 8 9
嵌套输出
嵌套:想象为一个表格外层for 代表行(9行),内容for代表列 (9列)
外层用print()换行
for i in range(1,10): for j in range(1,10): print("{}\t".format(j),end='') print()
结果
1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9
输出乘表
在这里 i 代表 行 j 代表列,通过format 输出乘法表
for i in range(1,10): for j in range(1,10): print("{}×{}={}\t".format(i,j,i*j),end='') print()
结果:
1×1=1 1×2=2 1×3=3 1×4=4 1×5=5 1×6=6 1×7=7 1×8=8 1×9=9 2×1=2 2×2=4 2×3=6 2×4=8 2×5=10 2×6=12 2×7=14 2×8=16 2×9=18 3×1=3 3×2=6 3×3=9 3×4=12 3×5=15 3×6=18 3×7=21 3×8=24 3×9=27 4×1=4 4×2=8 4×3=12 4×4=16 4×5=20 4×6=24 4×7=28 4×8=32 4×9=36 5×1=5 5×2=10 5×3=15 5×4=20 5×5=25 5×6=30 5×7=35 5×8=40 5×9=45 6×1=6 6×2=12 6×3=18 6×4=24 6×5=30 6×6=36 6×7=42 6×8=48 6×9=54 7×1=7 7×2=14 7×3=21 7×4=28 7×5=35 7×6=42 7×7=49 7×8=56 7×9=63 8×1=8 8×2=16 8×3=24 8×4=32 8×5=40 8×6=48 8×7=56 8×8=64 8×9=72 9×1=9 9×2=18 9×3=27 9×4=36 9×5=45 9×6=54 9×7=63 9×8=72 9×9=81
我们发现乘法表多了一半
这个好办,咱们每列循环的次数不大于 行数
第一行的时候 只有一列
第二行的时候 只有 二列
第三行的时候 只有三列
….
第就行的时候 只有九列
关键就是range的第二个参数 值为i+1
for i in range(1,10): for j in range(1,i+1): print("{}×{}={}\t".format(i,j,i*j),end='') print()
最终结果为:
1×1=1 2×1=2 2×2=4 3×1=3 3×2=6 3×3=9 4×1=4 4×2=8 4×3=12 4×4=16 5×1=5 5×2=10 5×3=15 5×4=20 5×5=25 6×1=6 6×2=12 6×3=18 6×4=24 6×5=30 6×6=36 7×1=7 7×2=14 7×3=21 7×4=28 7×5=35 7×6=42 7×7=49 8×1=8 8×2=16 8×3=24 8×4=32 8×5=40 8×6=48 8×7=56 8×8=64 9×1=9 9×2=18 9×3=27 9×4=36 9×5=45 9×6=54 9×7=63 9×8=72 9×9=81
动图展示九九乘法表执行过程
九九乘法表.gif
感谢大家阅读!!!
多说一句,很多人学Python过程中会遇到各种烦恼问题,没有人解答容易放弃。小编是一名python开发工程师,这里有我自己整理了一套最新的python系统学习教程,包括从基础的python脚本到web开发、爬虫、数据分析、数据可视化、机器学习等。