作者回复: 这里的self 是表示创建实例本身,self.name = name 相当于把外部的name的值赋给自己的属性self.name;对类做多次实例化之后,每次的self.name都表示“自己”的name属性,而不是“公共”的name
作者回复: 这里记得不是编译器决定的self,是习惯。建议在stackoverflow或google搜索,很多中文的解释不正确
作者回复: 没错,都是指对象自身
作者回复: 不正确,编译器原指c/c++语言这类编译执行的程序,通过编译器将源代码转换为机器语言,通过链接器之后形成的二进制文件用于执行。 python是解释语言,不需要编译可以逐条执行,但考虑到效率问题,我们一般把python源代码通过cpython编译为pyc格式的字节码,提高执行效率,也在一定程度上防止反编译还能保护源代码。更多编译器请搜索 编译器及其工作原理
作者回复: 给 test_login 和 TestLogin 改个名字就好了 默认情况下导入库或者包,不会执行其中的类和方法的,你用了test前缀应该是误了某些单元测试的包,导致了这样的结果
作者回复: 缩进的问题?
作者回复: 可以写(object), 也可以写(其他类)表示继承自某个类;可以参考经典类和新式类的区别
作者回复: 您好,类如果继承自指定的父类必须使用 类名称(父类)的形式,即括号和内容必须书写; 如果没有指定父类默认会继承object类,以下三种写法均不构成语法错误,类名不带括号,类名带空括号,类名(object),为语法整洁建议去掉空括号。