Вы не авторизованы и не можете видеть весь контент сайта. Хотите авторизоваться?
Данный сайт использует куки. Это позволяет нам анализировать взаимодействие посетителей с сайтом и делать его лучше. Продолжая пользоваться сайтом, вы соглашаетесь с использованием файлов cookie.
Вы можете установить этой сайт в виде иконки на рабочем столе
и использовать его как нативное приложение.
Хотите установить это веб-приложение?
Python для начинающих 013
<% normalizedTimer %>
Дан код:
```python
class Indexer:
def __getitem__(self, index):
# ваш код
X = Indexer()
for i in range(5):
print(X[i], end=' ')
```
<pre>который выводит следующий результат:
0 1 4 9 16
Какая реализация должна быть метода __getitem__? </pre>
Вопрос № 1(Верно)(Неверно)
Ответы:
```python
index = index ** 2
```
```python
return self.index
```
```python
return index
```
```python
return index ** 2
```
```python
self.__getitem__(index)
```
Дан код:
```python
class Indexer:
def __getitem__(self, index):
# ваш код
print('indexing', index)
else:
print('slicing', index.start, index.stop, index.step)
X = Indexer()
X[99]
X[1:99:2]
```
<pre>
Который выводит:
indexing 99
slicing 1 99 2
</pre>
Выберите верные варианты, которые могут подойти для места # ваш код
Вопрос № 2(Верно)(Неверно)
Ответы:
if type(index) is slice:
if isinstance(index, int):
if isinstance(index, slice):
if type(index) is int:
if type(index) == int:
Дан код:
```python
class Indexsetter:
def __init__(self):
self.data = [1, 2, 3, 4, 5]
def __setitem__ (self, index, value):
self.data[index] = value
a = Indexsetter()
a[0] = 10
print(a[0])
```
Что выведет данный код?
Вопрос № 3(Верно)(Неверно)
Ответы:
1
10
TypeError: 'Indexsetter' object is not subscriptable
<pre>В чем отличие __getattr__ от __getattribute__?</pre>
Вопрос № 4(Верно)(Неверно)
Ответы:
<pre>Метода __getattribute__ не существует.</pre>
<pre>В Python2 это название __getattr__ , а в Python3 название __getattribute__, но делают одно и то же.</pre>
<pre>__getattr__ вызывается, когда атрибута не существует в объекте его иерархии наследования,
а __getattribute__ вызывается всегда.</pre>
<pre>В чем отличие __setattr__ от __setattribute__?</pre>
Вопрос № 5(Верно)(Неверно)
Ответы:
<pre>Метода __setattribute__ не существует.</pre>
<pre>В Python2 это название __setattr__ , а в Python3 название __setattribute__, но делают одно и то же.</pre>
<pre>__setattr__ вызывается, когда атрибута не существует в объекте его иерархии наследования,
а __setattribute__ вызывается всегда.</pre>
Что выведет код:
```python
class StepperIndex:
def __init__(self, data):
self.data = data
def __getitem__(self, i):
return self.data[::-1][i].upper()
x = StepperIndex("hello")
print("-".join(list(x)))
```
Вопрос № 6(Верно)(Неверно)
Ответы:
o-l-l-e-h
H-E-L-L-O
h-e-l-l-o
O-L-L-E-H
hello
olleh
Дан код:
```python
for i in Numbers(1, 4):
print(i, end=' ')
```
Вывод следующий:
<pre>
1 2 3 4
</pre>
Отметьте возможные реализации класса Numbers?