Тест по основам программирования на Python с ответами

Тема 4. Функции

0

Как объявить функцию в Python?

function my_func():

def my_func():

func my_func():

define my_func():

Как вернуть значение из функции?

output

print

return

yield

Что делает *args в функции?

передаёт ключевые аргументы

передаёт произвольное количество позиционных аргументов

создаёт список

создаёт словарь

Что делает **kwargs в функции?

передаёт произвольные позиционные аргументы

передаёт произвольные именованные аргументы

создаёт кортеж

создаёт множество

Как вызвать функцию foo?

call foo()

foo()

run foo()

exec foo

Что будет выведено:

python
def f(): return 5 print(f())

5

None

f

Error

Что вернёт функция без return?

0

""

None

False

Как объявить функцию с аргументом по умолчанию?

def f(x): x=5

def f(x=5):

def f(x?:5):

def f(default x=5):

Что делает lambda x: x*2?

создаёт цикл

создаёт класс

создаёт анонимную функцию

создаёт список

Как вызвать lambda-функцию f = lambda x: x+1 для x=5?

f.call(5)

f(5)

call(f,5)

f.execute(5)

Что выведет:

python
def f(a, b=2): print(a,b) f(5)

5 2

5 None

2 5

5 5

Что делает return в функции?

выводит значение на экран

возвращает значение функции

завершает цикл

создаёт переменную

Как объявить функцию с произвольным количеством аргументов?

def f(*):

def f(*args, **kwargs):

def f(...):

def f(args, kwargs):

Что выведет:

python
def f(x): x += 1 return x print(f(5))

6

5

None

1

Как вызвать функцию внутри другой функции?

нельзя

просто вызвать её по имени

через return

через global

Что выведет:

python
def f(x): return x*2 print(f(3))

6

3

9

None

Как объявить функцию без аргументов?

def f(x=None):

def f():

def f(void):

def f(nil):

Что делает pass в теле функции?

возвращает None

ничего, используется как заглушка

завершает функцию

выводит сообщение

Как проверить, что объект является функцией?

isinstance(obj, int)

callable(obj)

type(obj) == func

hasattr(obj, 'func')

Что вернёт:

python
def f(): return "Hello" print(f())

Hello

"Hello"

None

Error

Как объявить рекурсивную функцию?

нельзя

def f(): f()

def f(): call(f)

def f(): return f()

Какой результат:

python
def f(x): return x+1 print(f(f(2)))

4

3

2

5

Как вернуть несколько значений из функции?

return x+y

return x,y

return [x+y]

return (x+y)

Что делает * при вызове функции f(*lst)?

создаёт кортеж

распаковывает список как аргументы

создаёт список

создаёт словарь

Что делает ** при вызове функции f(**d)?

распаковывает список

распаковывает словарь как именованные аргументы

создаёт словарь

создаёт кортеж

Какой результат:

python
def f(a,b=2): return a+b print(f(3))

5

3

2

None

Какой вариант корректно передаёт функцию как аргумент?

f(f)

f(f)

call(f)

exec(f)

Что делает return в рекурсивной функции?

вызывает ошибку

возвращает значение на каждом уровне рекурсии

завершает цикл

печатает значение

Как объявить анонимную функцию с двумя аргументами?

lambda x: y: x+y

lambda x,y: x+y

def(x,y): x+y

func(x,y): x+y

Как правильно вызвать функцию с аргументами по ключу?

f(x:5, y:10)

f(x=5, y=10)

f({x:5, y:10})

f(5:x,10:y)

Какой результат:

python
def f(x): return x*2 print(f(0))

0

None

Error

2

Как вернуть список из функции?

print([1,2,3])

return [1,2,3]

list(1,2,3)

return 1,2,3

Что делает yield в функции?

возвращает значение и завершает функцию

создаёт генератор

печатает значение

создаёт список