Поскольку вы не экземпляр класса (причудливый термин для создания) вы не можете назначить методы в любой случайный переменная. Как уже было сказано, вы должны сначала создать объект, в то же время убедившись, что метод, который вы вызываете, является частью класса, который вы вызывали или связали с классом каким-либо образом (например, созданием другого класса и последующим общением этого класса с текущим классом) , Поэтому вы должны сначала ввести d=test()
, а затем d.do()
. Кроме того, помните, что в вашем объявлении метода вы определили параметр, чтобы все, что вы сделали, было неправильным в себе, потому что, когда вы объявили функцию do, вы должны были бы заключить в скобки номер, который вы хотите отправить методу вычислить его квадрат. Таким образом, вы вводите test.do(10)
, а затем 10 отправляется ссылкой на метод, который нужно выполнить, что вы ему сказали.
Еще одна вещь: хотя это не огромная сделка, она помогает, если все имена классов начинаются с заглавной буквы, так как обычно это «питонический» способ делать вещи, а также делает ваш код гораздо легче читать, потому что, когда вы первый называется класс, кто-то мог бы легко спутать это для обычной функции
-1, это не действует на Python 3. – unwind
@unwind - в каком смысле? – Random832