第八章第1-2讲:python之对象

第1讲:魔法——对象

1.对象出发点:是提高编程的效率,解决重复的劳动,人性懒惰的使然。

2.对象包含2个方面:

 属性:如何描述对象

 方法:对该像能做什么?

 对象=属性+方法

第2讲:创建对象

1. 类:对象

 类:具有相同属性和方法的集合(好比户型图)

 对象:讲抽象实现为显示的存在(根据户型图实现的一个个相同的布局格局的房子)

2.定义类:

class Classname:

  属性

  方法

3.创建类与实例化对象

class Person:
    def setName(self,name):
        self.name = name
    def getName(self):
        return self.name
    def greet(self):
        return "hello! I‘m %s" % self.name
foo = Person()
bar = Person()
foo.setName("Bela")
bar.setName("Leo")
print(foo.greet())
print(bar.greet())
print(foo)
print(Person)

案例说明:

1.class关键字申明类,class后紧跟类名(类名一般首字母大写Person);class Person(object)object是代表从那个类里继承

2.Person类包含了3个方法(不是函数)

3.self参数是对于对象自身的引用,其也是方法与函数的区别

4.foo=Person()实例化

5.bar.setName("Bela")实例方法

6.print(foo) 结果<__main__.Person object at 0x0034E9D0>,foo指向了Person的实例(内存)

4.初始化__init__()  注意:初始化__init__     init前后是各2个下划线     当类使用了初始化方法,对象在实例化时,必须将init中的参数一并赋予
class Person:
    def __init__(self,name):
        self.name = name
    # def setName(self,name):
    #     self.name = name
    def getName(self):
        return self.name
foo = Person("Bela")
print(foo)
# 对象=属性+方法
class Myclass:
    # 属性:
    i = 12345
    def f(self):
        return "hello world!"
x = Myclass()
print("MyClass类的属性为:",x.i)
print("MyClass类的属性为:",x.f())
class Person:
    def __init__(self,name):
        self.name = name
    def greet(self):
        return "hello,I‘m %s." % self.name
foo = Person("Bela")
print(foo.greet())
print(Person.greet(foo))
class Person:
    i = 12345
    def greet(self):
        print(‘hello world!‘)
foo = Person()
print(foo.__init__())
print(foo.__str__()) # 内在的方法
print(foo)

结果:None<__main__.Person object at 0x011CDE70><__main__.Person object at 0x011CDE70>



原文地址:https://www.cnblogs.com/ling07/p/11223706.html

时间: 2024-10-10 18:19:13

第八章第1-2讲:python之对象的相关文章

有哪些比较好的讲Python进阶的博客?

Python是一种动态解释型的编程语言,它可以在Windows.UNIX.MAC等多种操作系统以及Java..NET开发平台上使用.不过包含的内容很多,加上各种标准库.拓展库,乱花渐欲迷人眼.因此如何进阶Python显得非常重要. 接下来看看比较好的讲Python进阶的博客,我这有十个,希望对你有帮助. 第一个是Planet Python,这是最出名的python博客其中之一: 第二个博客是Eli Bendersky 的博客:Eli Bendersky's website: 第三个博客是Code

给统计人讲Python(2)_Pandas入门

#Pandas官方文档:http://pandas.pydata.org/pandas-docs/stable/ #-*-author Yangami-*- import pandas as pd import numpy as np 一.基本类型 用列表.数组和字典构建series lst = list('abcedfg') # 列表 arr = np.arange(7) # 数组 # 构建方法 ser1 = pd.Series(lst) ser2 = pd.Series(arr) #一维序列

一个新手的Python自学之旅 #MacBook #《“笨办法”学Python》#第三章:言归正传讲Python:Mac系统的终端Terminal命令行快速入门

第三章:言归正传讲Python:Mac系统的终端Terminal命令行快速入门 以后我都会将<“笨办法”学Python>简称为“这本书” 本人用了近5年的MacBook,但在此之前,从未使用过电脑自带的“终端Terminal”(图标:).在非程序员的世界里,建立和删除文件夹或文件,都是:鼠标右键点新建/删除,这是UI带来的便利.但是,却不知道如何利用命令行实现这些操作. 首先,要掌握几个我们平时常用,但在代码界有另外名称的名词:目录.路径.打印. --目录:我们认为它是这样的:标题:第一章:第

一个新手的Python自学之旅 #MacBook #《“笨办法”学Python》#第四章:言归正传讲Python:Mac系统的终端Terminal命令行快速入门之较复杂的命令

第四章:言归正传讲Python:Mac系统的终端Terminal命令行快速入门之"较复杂的命令" 在写第三章的时候,发现自己已经忘记了好多命令.其实我并没有按照Zed A.Shaw的提示,将这些命令做成小卡片,然后每天去记忆.可能源于我的目的并非是为了掌握并精研Python,我写博客并不是单纯为了分享自己的学习经验.而是希望自己能够通过学习python和写博客的形式,让自己以后养成这样的学习和记录习惯,有助于以后技能的掌握和积累.Python起到抛砖引玉的作用. 闲话少说,下面开始介绍

Python之对象的属性

# -*- coding: utf-8 -*- #python 27 #xiaodeng #Python之对象的属性 #http://python.jobbole.com/82622/ #对象的属性 class bird(): feather = True class chicken(bird): fly = False def __init__(self,age): self.age = age summer = chicken(2) print(bird.__dict__) print(ch

python函数对象

适用于python 2.x版本 1. lambda函数 1 func = lambda x, y : x + y 2 print func(2, 4) lambda生成一个函数对象,参数是x,y, 返回x+y. 2. map() 函数 1 rtn = map((lambda x: x*3), [1, 2, 3, 4, 5, 6]) 2 print rtn map是python内置函数,第一个参数是函数,第二个参数是一个序列.第一个函数作用与序列的每一个元素,并将结果放在序列rtn里. 3. re

Python的对象操作(一)

python支持对象和函数   1. python是解释型语言,逐行运行 2. 对象调用 例子:删除文件的一个例子 2.1 先定义一个类 class MyApp: 2.2 import 引用要用到的模块 __author__ = 'Bright' import shutil import os """ * 对象操作实战 * 上演出多个文件 """ class MyApp: def __init__(self, root): self.root =

python string 对象

上一篇的整数对象是定长数据,即C中的long型整数. 但是python中还大量存在着不定长的数据类型.如字符串对象 和整数对象一样,字符串对象的组成如下: PyStringObject定义如下: Ob_size就是实际使用的内存大小,在注释中:ob_sval contains space for 'ob_size+1' elements. 因为末尾需要额外包含一个0 byte来保证字符串的结束. 这个学过C语言的应该都不会陌生的.但是这只是一个字符数组,怎么能包含N个字符呢? 显然这只能是一个字

python 获取对象信息

当我们拿到一个对象的引用时,如何知道这个对象是什么类型.有哪些方法呢? 使用type() 首先,我们来判断对象类型,使用type()函数: 基本类型都可以用type()判断: >>> type(123) <type 'int'> >>> type('str') <type 'str'> >>> type(None) <type 'NoneType'> 如果一个变量指向函数或者类,也可以用type()判断: >&