Функции без аргументов

Мы уже работали с функциями в Python. На самом деле, наша первая программа уже использовала функцию. print() на самом деле является функцией. min(), max(), input(), sorted() и все другие команды со скобками — это функции.
Функции выполняют несколько команд и в некоторых случаях возвращают результат. min() вычисляет минимум нескольких значений и возвращает это значение. А print(), напротив, выводит значение на экран.
Функции особенно полезны при устранении повторяющегося кода. Мы можем также определять свои собственные функции. Представьте, что вы хотите напечатать определенный объект 3 раза и сделать что-то еще между ними:
print('*')
print('##')
print('***')
print('####')
print('*****')

n = int(input())
print('~' * n)

print('*')
print('##')
print('***')
print('####')
print('*****')

name = input()
print(f'Hi, {name}')

print('*')
print('##')
print('***')
print('####')
print('*****')
def print_triangle():
    print('*')
    print('##')
    print('***')
    print('####')
    print('*****')

print_triangle()
n = int(input())
print('~' * n)

print_triangle()
name = input()
print(f'Hi, {name}')

print_triangle()
Чтобы определить пользовательскую функцию, нужно использовать ключевое слово def, за которым следует имя функции (print_triangle в нашем случае), далее () и :, чтобы обозначить начало блока функции. Список команд, которые должна выполнить функция, помещается в отступе внутри тела функции.
Обе эти программы выполняют точно те же операции, но во второй один и тот же повторяющийся код вынесен в функцию, что исключает копирование и вставку кода.
С другой стороны, в первой программе много копирования и вставки, и если мы решим заменить * на % при печати треугольника, нам придется вносить много изменений и проходить по каждой строке, чтобы сделать замену. Это может привести к беспорядку в больших кодовых базах и очень склонно к ошибкам.

Задание

Определите функцию, которая печатает прямоугольник размером и вызовите ее 3 раза. Границы прямоугольника должны состоять из символа #, а внутренняя часть должна быть пустой.
__Output__
############
#          #
#          #
#          #
#          #
#          #
#          #
#          #
#          #
############
############
#          #
#          #
#          #
#          #
#          #
#          #
#          #
#          #
############
############
#          #
#          #
#          #
#          #
#          #
#          #
#          #
#          #
############
 

Constraints

Time limit: 2 seconds

Memory limit: 512 MB

Output limit: 1 MB

To check your solution you need to sign in
Sign in to continue