题目
Code
-法1
i=n=int(input())
while i > 0:
print('.' * (i - 1) + '#' * n + ('.') * (n - i))
i -= 1
代码解析
这段代码使用了 Python 的 while 循环和字符串乘法来打印出一个特殊的图形。让我们来逐行解析代码:
-
i=n=int(input())
:这一行代码从用户输入中获取一个整数,然后将其赋值给变量i
和n
。这表示我们将使用输入的值来创建图形。 -
while i > 0
:这是一个 while 循环,它会一直执行直到变量i
的值小于等于 0。 -
print('.' * (i - 1) + '#' * n + ('.') * (n - i))
:这一行代码打印出一个特殊的图形。'.' * (i - 1)
表示由i-1
个'.'
组成的字符串,'#' * n
表示由n
个'#'
组成的字符串,'.' * (n - i)
表示由n-i
个'.'
组成的字符串。然后将这三部分字符串连接起来,形成一行图形。 -
i -= 1
:在每次循环迭代时,变量i
减去 1。
因此,这段代码的作用是根据用户输入的数字,打印出一个特殊的图形,图形的上半部分由点和井号组成,点的数量逐渐递减,井号的数量保持不变,而下半部分则相反。
解题思路
用好+和*就可以了,主要是要观察每行之间输出的不同
奇技淫巧
其实可以考虑用fullfill()填充函数,但是直接用* 和+更简单