Встречается на собеседованиях • сегодня

Принимал ли противоречащие решения

В Python, если функция или метод возвращает разные результаты при одинаковых входных данных, это называется нарушением детерминированности. Это может быть вызвано:

  1. Использованием изменяемых аргументов по умолчанию:
python
def foo(x=[]):
    x.append(1)
    return x
# foo() -> [1], foo() -> [1,1]
  1. Зависимостью от глобального состояния:
python
counter = 0
def bar():
    global counter
    counter += 1
    return counter
# bar() -> 1, bar() -> 2
  1. Использованием случайных значений или времени:
python
import random
def random_choice():
    return random.choice([1, 2, 3])

Хорошая практика - делать функции чистыми (без побочных эффектов) и детерминированными. Для тестирования и поддержки кода это критически важно.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы