Какой тип копирования используется в коде выше?
Anonymous Quiz
56%
Поверхностное копирование
15%
Глубокое копирование
16%
Поэлементное копирование
14%
Все вышеперечисленное
Объяснение:
Когда мы создаем новую переменную ls с помощью ls = list(l1), объект ls становится новым списком, содержащим те же элементы, что и l1. Однако важно понимать, что это поверхностное копирование.
То есть, элементы внутри списка l1 (которые также сами являются списками) не копируются глубоко; вместо этого в новый список ls копируются лишь ссылки на те же самые внутренние списки.
Например, если вы измените внутренний список в ls, это изменение отразится и в l1, поскольку оба списка ссылаются на одни и те же внутренние объекты.
Когда мы создаем новую переменную ls с помощью ls = list(l1), объект ls становится новым списком, содержащим те же элементы, что и l1. Однако важно понимать, что это поверхностное копирование.
То есть, элементы внутри списка l1 (которые также сами являются списками) не копируются глубоко; вместо этого в новый список ls копируются лишь ссылки на те же самые внутренние списки.
Например, если вы измените внутренний список в ls, это изменение отразится и в l1, поскольку оба списка ссылаются на одни и те же внутренние объекты.
Каким будет результат выполнения кода выше?
Anonymous Quiz
12%
Python is amazing
35%
Pythonisamazing
51%
Syntax Error
3%
Ничего из вышеперечисленного
Объяснение:
Магия удивительной и загадочной функции print() не дает покоя? На самом деле само соединение строк не имеет никакого отношения к функции print().
Вот доказательство (пробуем в IDLE):
Как видите Python автоматически соединяет все части строки, если вы разделите её на несколько частей в одной строке кода.
Python также позволяет делать интересные вещи, например, разбивать длинные строки, используя скобки:
Вывод:
Обратите внимание, что при объединении строк Python не добавляет пробел между ними, если он не указан явно
Магия удивительной и загадочной функции print() не дает покоя? На самом деле само соединение строк не имеет никакого отношения к функции print().
Вот доказательство (пробуем в IDLE):
>>> "Python" "is" "amazing"
'Pythonisamazing'
>>> a = "Python" "is" "amazing"
>>> a
'Pythonisamazing'
Как видите Python автоматически соединяет все части строки, если вы разделите её на несколько частей в одной строке кода.
Python также позволяет делать интересные вещи, например, разбивать длинные строки, используя скобки:
a_long_string = ("Съешь ещё этих мягких французских булок,"
" да выпей же чаю")
print(a_long_string)
Вывод:
Съешь ещё этих мягких французских булок, да выпей же чаю
Обратите внимание, что при объединении строк Python не добавляет пробел между ними, если он не указан явно
Каким будет результат выполнения кода выше?
Anonymous Quiz
4%
[[5, 2], [0, 2]]
61%
[[5, 0], [0, 0]]
23%
[[5, 0], [5, 0]]
12%
[[5, 5], [5, 5]]
Объяснение:
Оператор * здесь не создает копии объекта, а копирует ссылку на объект. Это означает, что a[0] и a[1] ссылаются на один и тот же вложенный список. Поэтому изменение a[0][0] также отражается на a[1][0], поскольку они являются одним и тем же объектом в памяти. В результате, вывод будет выглядеть как [[5, 0], [5, 0]].
Оператор * здесь не создает копии объекта, а копирует ссылку на объект. Это означает, что a[0] и a[1] ссылаются на один и тот же вложенный список. Поэтому изменение a[0][0] также отражается на a[1][0], поскольку они являются одним и тем же объектом в памяти. В результате, вывод будет выглядеть как [[5, 0], [5, 0]].
Какое утверждение верно для __init__ и __new__ методов в Python?
Anonymous Quiz
85%
__init__ инициализирует объект, __new__ создает объект
4%
__init__ создает объект, __new__ инициализирует объект
8%
__init__ и __new__ используются для инициализации объектов
3%
__init__ и __new__ используются для создания объектов
Объяснение:
В Python, метод new отвечает за создание объекта, а метод init используется для инициализации объекта после его создания
Эти два метода взаимодействуют в процессе создания объекта класса
В Python, метод new отвечает за создание объекта, а метод init используется для инициализации объекта после его создания
Эти два метода взаимодействуют в процессе создания объекта класса
Каким будет результат выполнения кода выше?
Anonymous Quiz
22%
Syntax Error
6%
Type Error
37%
I’m going to drive on my own!
35%
I need a driver!
Объяснение:
Всё объяснение заключается в том, что троеточие («...») по сути «истинно». Да, это действительно так!
Посмотрите:
В свою очередь логический оператор
Таким образом и получаем ответ
Всё объяснение заключается в том, что троеточие («...») по сути «истинно». Да, это действительно так!
Посмотрите:
>>> bool(...)
True
В свою очередь логический оператор
or
вернет True если хотя бы один из его операндов истинный:>>> bool(age >= 18 or ...)
True
>>> bool(age >= 18)
False
>>> bool(...)
True
Таким образом и получаем ответ
I'm going to drive on my own!
Объяснение:
Функция
Функция
count
в Python используется для подсчёта количества вхождений определённого элемента в последовательности. Это может быть полезно, когда вам нужно узнать, сколько раз определённое значение встречается в строке, списке, кортеже.Объяснение:
В Python строки являются неизменяемыми объектами и иногда для оптимизации Python использует один и тот же объект для хранения идентичных строковых литералов
Но это не гарантировано для строк, созданных динамически или через операции, как в данном примере с конкатенацией
Оператор
В Python строки являются неизменяемыми объектами и иногда для оптимизации Python использует один и тот же объект для хранения идентичных строковых литералов
Но это не гарантировано для строк, созданных динамически или через операции, как в данном примере с конкатенацией
Оператор
is
проверяет идентичность объектов, а не их эквивалентность. А так как z
и "123456"
— это разные объекты в памяти, даже если их значения одинаковы, то и ответ у нас False
Объяснение:
Метод
Так как в
Метод
find()
возвращает индекс первого вхождения указанного символа или подстроки в строке. Если символ или подстрока не найдены, метод find()
возвращает -1
Так как в
Python
нет символа p
, то и ответ у нас -1