我希望python以此顺序打印我的哈希值:
#
##
###
####
然后下来,这样:
###
##
#
我设法用以下代码完成了前4行:
c = ("#")
n = 0
row = (c * 4 + "\n")
for c in row:
n = n + 1
print(c * n)
这是我的预期输出:
#
##
###
####
###
##
#
这是实际输出:
#
##
###
####
答案 0 :(得分:5)
具有一个循环
for i in range (-3, 4): print('#'*(4-abs(i)))
如果要概括
nmax = int(input('Max number of hash marks? '))
for i in range (1-nmax, nmax): print('#'*(nmax-abs(i)))
答案 1 :(得分:0)
通过range()
函数使用for
循环:
for i in range(1, 8):
print("#" * i)
然后使用reversed()
函数重复相同的操作:
for i in reversed(range(1, 8)):
print("#" * i)
您还可以使用一个循环,如下所示:
for i in (list(range(1, 8)) + list(range(1, 8))[::-1]):
print("#" * i)
无论哪种方式,前两个循环结合起来,第三个循环将输出:
#
##
###
####
#####
######
######
#####
####
###
##
#
注意::写list(range(1, 8))
与写[1, 2, 3, 4, 5, 6, 7]
相同。
祝你好运。