Python 1000 道练习题(9) python例题1000道
在Python中,for循环用于打印各种种图案是最常见的编程问题。大多数打印模式都使用以下概念来控制输出:
上一篇文章,我们和大家一起学习了简单的三角形金字塔输出;大家自己尝试去写一遍了吗?下面让我们来继续尝试使用Python进行控制台图形的输出练习吧
1.输出倒三角形金字塔模型
rows = 10
# 使用 k 来控制打印输出空格
k = 2 * rows - 2
# 外循环,变量逆序循环
for i in range(rows, -1, -1):
# 这个内循环控制空格输出数量
for j in range(k, 0, -1):
print(end=" ")
k = k + 1
# 这个内循环控制输出星号 * 的数量
for j in range(0, i + 1):
print("*", end=" ")
print("")
输出:
* * * * * * * * * * *
* * * * * * * * * *
* * * * * * * * *
* * * * * * * *
* * * * * * *
* * * * * *
* * * * *
* * * *
* * *
* *
*
2.输出菱形金字塔模型
rows = 10
# k 为空值空格输出的变量
k = 2 * rows - 2
# 外循环控制打印行数
for i in range(0, rows):
# 这个内循环控制输出空格数
for j in range(0, k):
print(end=" ")
# k 递减
k = k - 1
# 这个内循环控制输出星号 * 数量
for j in range(0, i + 1):
print("* ", end="")
print("")
# 输出倒三角金字塔
# k 为空值空格输出的变量
k = rows - 2
# 逆序循环
for i in range(rows, -1, -1):
# 这个内循环控制输出空格数
for j in range(k, 0, -1):
print(end=" ")
# k 递增
k = k + 1
# 这个内循环控制输出星号 * 数量
for j in range(0, i + 1):
print("* ", end="")
print("")
输出:
*
* *
* * *
* * * *
* * * * *
* * * * * *
* * * * * * *
* * * * * * * *
* * * * * * * * *
* * * * * * * * * *
* * * * * * * * * * *
* * * * * * * * * *
* * * * * * * * *
* * * * * * * *
* * * * * * *
* * * * * *
* * * * *
* * * *
* * *
* *
*
3.输出侧边金字塔模型
rows = 10
# 外循环控制打印行数
for i in range(0, rows):
# 内循环控制打印星号 * 数量
for j in range(0, i + 1):
print("*", end=' ')
# 每次迭代后变换行
print(" ")
# 逆序再次输出打印一次
for i in range(rows + 1, 0, -1):
for j in range(0, i - 1):
print("*", end=' ')
print(" ")
输出:
*
* *
* * *
* * * *
* * * * *
* * * * * *
* * * * * * *
* * * * * * * *
* * * * * * * * *
* * * * * * * * * *
* * * * * * * * * *
* * * * * * * * *
* * * * * * * *
* * * * * * *
* * * * * *
* * * * *
* * * *
* * *
* *
*
4.输出漏斗金字塔模型
rows = 10
k = rows - 2
# 打印输出倒金字塔模型
for i in range(rows, -1 , -1):
for j in range(k , 0 , -1):
print(end=" ")
k = k + 1
for j in range(0, i+1):
print("* " , end="")
print()
# 打印输出正金字塔模型
k = 2 * rows - 2
for i in range(0 , rows+1):
for j in range(0 , k):
print(end=" ")
k = k - 1
for j in range(0, i + 1):
print("* ", end="")
print()
输出:
* * * * * * * * * * *
* * * * * * * * * *
* * * * * * * * *
* * * * * * * *
* * * * * * *
* * * * * *
* * * * *
* * * *
* * *
* *
*
*
* *
* * *
* * * *
* * * * *
* * * * * *
* * * * * * *
* * * * * * * *
* * * * * * * * *
* * * * * * * * * *
* * * * * * * * * * *
今天和大家一起使用Python输出了一些更复杂的金字塔模型,大家都学会了吗? 欢迎大家关注:Python学徒,一起学习Python吧!