Какой способ суммировать элементы матрицы M самый быстрый? #джуну
  Anonymous Quiz
    36%
    A. sum(sum(row) for row in M)
      
    9%
    B. for row in M:     for elem in row:         total += elem
      
    31%
    C. sum(x for row in M for x in row)
      
    24%
    Скорость одинаковая, даже на крупных матрицах
      
    Вариант C использует генераторное выражение, которое является наиболее эффективным способом суммирования элементов матрицы, так как не требует создания промежуточного списка. Цикл for в варианте B включает двухуровневый цикл, то есть является самым медленным вариантом. Вариант A менее эффективен, чем C, так как включает дополнительный вызов sum().
  Какой способ добавления создания ключей в словаре не сработает?
  Anonymous Quiz
    12%
    my_dict.update({'c': 3})
      
    19%
    my_dict.setdefault('c', 3)
      
    25%
    my_dict = {**my_dict, 'c': 3}
      
    44%
    Все способы рабочие
      
    Метод update() позволяет добавить ключи и значения из другого словаря или пары ключ-значение.
Метод setdefault() добавляет ключ с определенным значением, если данный ключ не существует в словаре.
   
Вы можете создать новый словарь с помощью выражения словаря и затем объединить его с существующим словарем.
  
my_dict = {'a': 1, 'b': 2}
my_dict.update({'c': 3})
print(my_dict) # {'a': 1, 'b': 2, 'c': 3}
Метод setdefault() добавляет ключ с определенным значением, если данный ключ не существует в словаре.
my_dict = {'a': 1, 'b': 2}
my_dict.setdefault('c', 3)  # добавляет 'c' с значением 3
my_dict.setdefault('a', 5)  # не изменяет существующий ключ 'a'
print(my_dict)  # {'a': 1, 'b': 2, 'c': 3}
Вы можете создать новый словарь с помощью выражения словаря и затем объединить его с существующим словарем.
my_dict = {'a': 1, 'b': 2}
my_dict = {**my_dict, 'c': 3}
print(my_dict) # {'a': 1, 'b': 2, 'c': 3}
Какие типы объектов не являются итерируемыми? #джуну
  Anonymous Quiz
    10%
    Строки
      
    9%
    Объекты файлов
      
    59%
    Целочисленные значения
      
    22%
    Все вышеперечисленное итерируется
      
    Что выведет код выше?
  Anonymous Quiz
    69%
    <class 'tuple'>
      
    6%
    <class 'string'>
      
    10%
    <generator object <genexpr> at 0x7f09f5f7e400>
      
    15%
    Error
      
    Какой тип объекта является изменяемым?
  Anonymous Quiz
    20%
    Числа
      
    17%
    Строки
      
    13%
    Кортежи
      
    51%
    Объект файла
      
    Кто из нижеперечисленных НЕ является числом с плавающей точкой?
  Anonymous Quiz
    1%
    1.23
      
    28%
    1.
      
    14%
    3.14е-10
      
    56%
    Все являются
      
    Python не сравнивает результат False выражения 1 == 2 с числом 3 — формально это означает то же, что и выражение 0 < 3, которое дает True.
  При таком сравнении выше причина False связана с тем фактом, что числа с плавающей точкой не способны представлять определенные значения точно из-за ограниченного количества битов — фундаментальная проблема в численном программировании, не уникальная для языка Python.
  Что делает оператор //?
  Anonymous Quiz
    60%
    Делит с округлением в меньшую сторону
      
    8%
    Делит модули чисел друг на друга
      
    26%
    Возвращает остаток деления
      
    6%
    Такой уже нет в Python 3.X
      
    Как известно, в Python математика с плавающей точкой не совсем точна из-за
ограниченного пространства, применяемого для хранения значений. Потому в примере выше будет не 0. #джуну
  ограниченного пространства, применяемого для хранения значений. Потому в примере выше будет не 0. #джуну
Какими функциями / методами обернуть каждое из слагаемых в примере выше, чтобы получить 0.0?
  Anonymous Quiz
    29%
    round(0.1) + round(0.1) + round(0.1) - round(0.3)
      
    39%
    Decimal("0.1") + Decimal("0.1") + Decimal("0.1") - Decimal("0.3")
      
    19%
    int(0.1) + int(0.1) + int(0.1) - int(0.3)
      
    13%
    Ничем из вышеперечисленного