尽管看了一遍书本,时隔俩月也是心有余而力不足,全然无感、头脑空白,重头开始。先补课,在回顾往期内容吧!
今天的内容是为创建的类中属性指定默认的值,可以从代码看出,为属性赋默认值,不一定要在__init__中指定形参。
类的第一次纯手工输入就出错了,显示类型错误,在创建Car类的实例时,显示参数并未传递给定义的类。百思不得其解只好求助战友,发现原来是init这个函数的下划线是双下划线而不是单下划线。看书看了那些,这样的细节没注意,改之。
凭着头脑中的印象又把代码重新敲击一遍,再次运行发现还是不对,显示全局变量long_name并未被定义,肯定是定义描述性信息时出了错。看源代码,原来是返回函数值时并不需要给属性重新赋值,直接定义变量并赋值即可。
修改后终于运行出了创建实例后预期的结果。
总结:
1、__init__是类中的特殊方法(类中的函数称为方法),开头和末尾有两条下划线,为的是区别类中一般的方法命名;
2、在类中给属性指定默认值时不需要设定专门的形参;且在方法__init__中;
3、类中的方法返回值时,不需要给属性赋值,直接定义变量并返回值即可。
4、方法或函数中的文档字符串注释也是代码的一部分,清晰准确的注释必不可少。