Гость
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Python перегрузка len / 4 сообщений из 4, страница 1 из 1
25.08.2020, 08:00
    #39992137
Areostar
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Python перегрузка len
в классе пытаюсь перегрузить оператор
Код: python
1.
2.
    def __len__(self):
        return (self.n, self.m)



пытаюсь использовать:
Код: python
1.
print(len(matrix))



получаю ошибку:
авторTraceback (most recent call last):
File "C:/Users/areostar/PycharmProjects/linear_mod/main.py", line 16, in <module>
print(len(matrix))
TypeError: 'tuple' object cannot be interpreted as an integer
...
Рейтинг: 0 / 0
25.08.2020, 08:37
    #39992144
Alexander A. Sak
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Python перегрузка len
Из названия вроде понятно что должно возвращаться, но и в доке про это есть:
https://docs.python.org/3/reference/datamodel.html#object.__len__ ... Should return the length of the object, an integer >= 0. ...
...
Рейтинг: 0 / 0
25.08.2020, 11:08
    #39992171
Areostar
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Python перегрузка len
Alexander A. Sak,

Но у матрицы два размера! тоесть придётся делать кастомный метод что б вернуть список или картеж?
...
Рейтинг: 0 / 0
25.08.2020, 19:10
    #39992375
mini.weblab
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Python перегрузка len
Areostar,
длина это скаляр по определению, поэтому не нужно ничего изобретать и тем более перегружать.
настоятельно советую воспользоваться библиотекой numpy, библиотека хорошо документирована и в интернете можно найти tutorials на любой вкус.
...
Рейтинг: 0 / 0
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Python перегрузка len / 4 сообщений из 4, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]