LPTHW 笨办法学python 40章 类

今天读了LPTHW的第40章以后豁然开朗,原来一直愚钝,不太理解类的定义和使用,还有就是不太理解关于self的定义。



class MyStuff(object):
  def __init__(self):
    self.tangerine = "And now a thousand years between"
  def apple(self):
    print "I AM CLASSY APPLES!"

说类和迷你模块差不多,那么对于类来说,也必然有一个类似 import 的概念。这个概念名称就是
“实例(instance)”。这只是一种故作高深的叫法而已,它的意思其实是“创建”。当你将一个类“实例
化”以后,你就得到了一个 对象(object) 。
实现实例化的方法,就是像调用函数一样地调用一个类:
thing = MyStuff()
thing.apple()
print thing.tangerine
为什么创建 __init__ 或者别的类函数时需要多加一个 self 变量?
如果你不加 self , cheese = ‘Frank‘ 这样的代码意义就不明确了,它指的既可能
是实例的 cheese 属性,或者一个叫做 cheese 的局部变量。有了 self.cheese =
‘Frank‘ 你就清楚地知道了这指的是实例的属性 self.cheese 。

不太理解类继承中的关于super的定义。

看了网上的评论越看越糊涂。

时间: 2024-09-30 11:11:46

LPTHW 笨办法学python 40章 类的相关文章

LPTHW 笨办法学python 37章 python关键字/关键词介绍

本章简要的介绍了各种关键词: and:[布尔运算]且 del: 删除变量(函数,类) from: 从某一个库或者文件读取 not:[布尔运算]非 while: while-loop 关键字,后跟循环条件 as: 通常和import类叠加使用,代表以某个其他名称加载某个模块. elif: if分支控制的一部分. global: 声明一个变量为全局变量. or:[布尔运算]或 with:执行一个动作,通常和as一起使用,使用with后,完成动作后,必定关闭或者退出. assert: 声明一个错误.使

LPTHW 笨办法学python 33章

32-33章节 将for-loop和while-loop循环的. 俩种句法就不说了.简单说下个人对于for和while的理解. 我觉得他learn python the hard way这里的写法是, 先说相同点: 1.都可以一次操作都不做,for-loop如果集合为空,while后面的条件为false 他也可以一次循环操作都不做,测试方法如下: >>> for i in []: print "1",i, >>> >>> i = 3

LPTHW 笨办法学python 20章

本章节讲述了,函数和文件的综合操作. 分别 执行了.1.读出文件所有内容,2.把文件重置至文件开头.3.打印一行. 我在本节作了一个小小的改良,设置了一个全局变量,记录当前应该输入哪一行,如果执行过一次,我就把这个行数加一. 代码部分如下: #!/usr/bin/env python # -*- coding:utf-8 -*- from sys import argv script, input_file = argv def print_all(f): print f.read() def

LPTHW 笨方法学python 19章

本章节,我只是把所有的输出加上了自己的注释. #!/usr/bin/env python # -*- coding:utf-8 -*- def cheese_and_crakers(cheese_count, boxes_of_crackers): '''定义了cheese_and_crakers的函数 读出两个变量,并输出他们. ''' print "You have %d cheeses!" % cheese_count print "You have %d boxes

LPTHW 笨方法学python 18章

看完18章以后,发现第一个练习中,使用了*args读取全部的的输入参数作为一个元组,但是在他的练习中只给了两个变量去赋值,当用户不清楚这个函数的定义时,就可能会给出过多的变量进这个函数,那么就会出现如下错误: ValueError: too many values to unpack 也就是所谓的解包错误,给出的值太多了. 那么为了杜绝这种情况,我取巧解决了下.就是我把元组改变成一个列表,然后补了2位进去. 如果他给的变量少了也没关系,我能补齐.可能太搓了,以后有好的思路再来补齐. def pr

笨办法学 Python (Learn Python The Hard Way)

最近在看:笨办法学 Python (Learn Python The Hard Way) Contents: 译者前言 前言:笨办法更简单 习题 0: 准备工作 习题 1: 第一个程序 习题 2: 注释和井号 习题 3: 数字和数学计算 习题 4: 变量(variable)和命名 习题 5: 更多的变量和打印 习题 6: 字符串(string)和文本 习题 7: 更多打印 习题 8: 打印,打印 习题 9: 打印,打印,打印 习题 10: 那是什么? 习题 11: 提问 习题 12: 提示别人

笨办法学Python 练习13和14

原题: 1 from sys import argv 2 3 script, first, second, third = argv 4 5 print "The script is called:", script 6 print "Your first variable is:", first 7 print "Your second variable is:", second 8 print "Your third variabl

笨办法学Python(三十)

习题 30: Else 和 If 前一习题中你写了一些 "if 语句(if-statements)",并且试图猜出它们是什么,以及实现的是什么功能.在你继续学习之前,我给你解释一下上一节的加分习题的答案.上一节的加分习题你做过了吧,有没有? 你认为 if 对于它下一行的代码做了什么? If 语句为代码创建了一个所谓的"分支",就跟 RPG 游戏中的情节分支一样.if 语句告诉你的脚本:"如果这个布尔表达式为真,就运行接下来的代码,否则就跳过这一段.&quo

笨办法学Python(六)

习题 6: 字符串(string)和文本 虽然你已经在程序中写过字符串了,你还没学过它们的用处.在这章习题中我们将使用复杂的字符串来建立一系列的变量,从中你将学到它们的用途.首先我们解释一下字符串是什么东西.    字符串通常是指你想要展示给别人的.或者是你想要从程序里"导出"的一小段字符.Python 可以通过文本里的双引号 " 或者单引号 ' 识别出字符串来.这在你以前的 print 练习中你已经见过很多次了.如果你把单引号或者双引号括起来的文本放到 print 后面,它