170 похожих чатов

Мне вот интересно вы можете использовать шаблоны над классом, например



class Dog (bar)

или вы можете это делать только через функцию def

И что тогда если вам нужно вставить шаблонную функцию внутри других функций
как вы делаете?

16 ответов

4 просмотра

еще раз. в питоне нет шаблонов. от слова совсем.

class Point: def __init__(self, x, y): self.x = x self.y = y какого типа x, y у класса точка? Point(1, 2) Point(3.0, 3.5) Point("foo", "bar") # surprise!

Ilia- Автор вопроса
Alex
class Point: def __init__(self, x, y): ...

3 разных типа int, double и string наверно на шаблон похоже функция Point как я понял это реализация структуры __init__?

Ilia- Автор вопроса
Alex
class Point: def __init__(self, x, y): ...

struct Point { template <class T1, class T2> Point(T1&& x, T2&& y,) { }; вызывать так же в main Point(1, 2); Point(3.0, 3.5); похоже на шаблоны

Ilia- Автор вопроса
Tishka17
a=Point(1,"2") a.x=[]

это уже присваивание в переменную идет, питон может понять что это массив с ходу?

Ilia
struct Point { template <class T1, class T2> ...

похоже и ? 1. в питоне нет шаблонов. 2. в питоне нет спецификаторов доступа к методам и полям у классов. есть соглашение именовать имена, которые не являются частью публичного интерфейса при помощи префикса _. 3. в питоне нет private, а __name — это не private. это так к слову на будущее.

Ilia
это уже присваивание в переменную идет, питон може...

1. это список а не массив. 2. в смысле "сходу"? что понять?

Ilia- Автор вопроса
Alex
1. это список а не массив. 2. в смысле "сходу"? чт...

просто вы не указываете какой это тип переменной int, double, массив или что то еще. Очень необычно

Ilia
просто вы не указываете какой это тип переменной i...

потому что его нет. тип есть у объекта, а не у переменной.

Ilia
struct Point { template <class T1, class T2> ...

В питоне вообще все наследуется от object. Поэтому можно просто объявить структуру как словарь вида object: object

Ilia
просто вы не указываете какой это тип переменной i...

переменная (на самом деле ссылка или имя) может указывать (ссылаться) на объект любого типа.

Ilia
просто вы не указываете какой это тип переменной i...

Это называется динамическая типизация

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта