如何使python在散列中打印右箭头?

时间:2019-06-14 14:01:56

标签: python python-3.x

我希望python以此顺序打印我的哈希值:

  1. 行= #
  2. 行= ##
  3. 行= ###
  4. 行= ####

然后下来,这样:

  1. 行= ###
  2. 行= ##
  3. 行= #

我设法用以下代码完成了前4行:

c = ("#")
n = 0
row = (c * 4 + "\n")

for c in row:
  n = n + 1 
  print(c * n)

这是我的预期输出:

#
##
###
####
###
##
#

这是实际输出:

#
##
###
####

2 个答案:

答案 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]相同。

祝你好运。