此时的d1就是类Dog的实例化对象

实例化,其实就是以Dog类为模版,在内存里开辟一块空间,存上数据,赋值成一个变量名
# 定义类模板
class dog(object): # 定义类的方法功能
# 说话功能 self 必须有
def sayhi(self):
print("helo") # 通过类 实例化对象
d1 = dog("小涛")
print(d1) # <__main__.dog object at 0x0000000001ECD208> # 通过对象 调用类里的方法
d1.sayhi() # helo
# 定义类模板
class dog(object): # 定义类的 属性
def __init__(self, name):
# 相当于创建一个变量 NAME
self.NAME = name # 定义类的 方法功能
# 说话功能 self 必须有
def sayhi(self):
print("helo") # 通过类 实例化对象
d1 = dog("小涛")
d2 = dog("小峰")
print(d1) # <__main__.dog object at 0x0000000001ECD208> # 通过对象 调用类里的方法
d1.sayhi() d2.sayhi() # helo

这里类由 多个函数拼出来的 函数的特性局部变量也有

有了self 就可以在函数之间的局部变量的调用  ,各种字符串格式化格式

# 定义类模板
class dog(object): # 定义类的属性
# d1
def __init__(self, name):
# 相当于创建一个变量 NAME
self.NAME = name # D1.NAME =name # 定义类的方法功能
# 说话功能 self 必须有
def sayhi(self):
print("helo, i m is {name}".format(name=self.NAME))
print("helo, i m is {0}".format(self.NAME))
print("helo, i m is %s" % self.NAME)
print("helo, i m is", self.NAME ) # 通过类 实例化对象 d1 d2
d1 = dog("小涛") # dog(d1, "小涛") 传参数
d2 = dog("小峰")
print(d1) # <__main__.dog object at 0x0000000001ECD208> # 通过对象 调用类里的方法
d1.sayhi() d2.sayhi() # helo, i m is 小涛
# helo, i m is 小峰

没有实例化 打印类 证明创建类后 类已经存在内存里了

# 定义类模板
class dog(object): # 定义类的属性
# d1
def __init__(self, name):
# 相当于创建一个变量 NAME
self.NAME = name # D1.NAME =name # 定义类的方法功能
# 说话功能 self 必须有
def sayhi(self):
print("helo, i m is {name}".format(name=self.NAME))
print("helo, i m is {0}".format(self.NAME))
print("helo, i m is %s" % self.NAME)
print("helo, i m is", self.NAME ) # 通过类 实例化对象 d1 d2
# d1 = dog("小涛") # dog(d1, "小涛") 传参数
# d2 = dog("小峰")
# print(d1)
#
# # <__main__.dog object at 0x0000000001ECD208>
#
# # 通过对象 调用类里的方法
# d1.sayhi()
#
# d2.sayhi() # helo, i m is 小涛
# helo, i m is 小峰 print(dog) # 执行结果
<class '__main__.dog'>

实例化后产生的对象 叫 实例 。  d1、d2就是实例 ,  self 就是实例

__init__   就是构造函数 构造方法    函数是类的方法

# 定义类模板
class dog(object): # 定义类的属性
# d1
# self 就是实例
def __init__(self, name): # 构造函数 构造方法==初始化方法
# 相当于创建一个变量 NAME
self.NAME = name # D1.NAME =name # 定义类的方法功能
# 说话功能 self 必须有
def sayhi(self): # 类的方法
print("helo, i m is {name}".format(name=self.NAME))
print("helo, i m is {0}".format(self.NAME))
print("helo, i m is %s" % self.NAME)
print("helo, i m is", self.NAME) # 通过类 实例化对象 d1 d2
d1 = dog("小涛") # dog(d1, "小涛") 传参数
d2 = dog("小峰") # 实例化后产生的对象 叫 实例 d2就是实例
# 定义类模板
class dog(object): # 定义类的属性
# d1
# self 就是实例
def __init__(self, name): # 构造函数 构造方法==初始化方法
# 相当于创建一个变量 NAME
self.NAME = name # D1.NAME =name # 定义类的方法功能
# 说话功能 self 必须有
def sayhi(self): # 类的方法
print("helo, i m is {name}".format(name=self.NAME)) def eat(self,food):
print("helo, my name is %s, i like eat %s" %(self.NAME,food)) # 通过类 实例化对象 d1 d2
d1 = dog("小涛") # dog(d1, "小涛") 传参数
d2 = dog("小峰") # 实例化后产生的对象 叫 实例 d2就是实例 d1.eat("苹果") # helo, my name is 小涛, i like eat 苹果

python 定义类 学习1的更多相关文章

  1. python 定义类 学习2

    构造函数的变量 也叫做 实例变量 class role(): # 传参数 def __init__(self,name,role,weapon,life_value=100,moneny=15000) ...

  2. python定义类()中写object和不写的区别

    这里需要说明一下: python3中,类定义默认继承object,所以写不写没有区别 但在python2中,并不是这样 所以此内容是针对python2的,当然python3默认继承,不代表我们就傻乎乎 ...

  3. python 定义类 简单使用

    在test.py文件里面 #coding=utf-8 #类的定义 class user: #定义私有属性 __name = '' __age = 0 #定义基本属性 sex = '' #定义构造函数 ...

  4. Python用类实现串以及对串的方法进行单元测试

    串是一种常见的数据结构,这里使用Python定义类来实现相应的方法.先看代码,再对相关知识进行讲解. # coding=utf-8 __all__=['ADTString'] class ADTStr ...

  5. 第15.26节 PyQt(Python+Qt)入门学习:Model/View架构中的便利类QListWidget详解

    老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python博客地址 一.概述 列表部件(List Widget)对应类QListWidget,是从QListView派生 ...

  6. Python笔记——类定义

    Python笔记——类定义 一.类定义: class <类名>: <语句> 类实例化后,可以使用其属性,实际上,创建一个类之后,可以通过类名访问其属性 如果直接使用类名修改其属 ...

  7. python之定义类创建实例

    https://www.cnblogs.com/evablogs/p/6688938.html 类的定义 在Python中,类通过class关键字定义,类名以大写字母开头 1 2 >>&g ...

  8. 洗礼灵魂,修炼python(47)--巩固篇—定义类的方法之@classmethod,@staticmethod

    定义类的方法,相信你会说,不就是在class语句下使用def () 就是定义类的方法了嘛,是的,这是定义的方法的一种,而且是最普通的方式 首先,我们已经知道有两种方式: 1.普通方法: 1)与类无关的 ...

  9. 【python】python中的定义类属性和对像属性

    python中变量是没有类型的可以绑定任意类型,但是在语法上不能声明变量. 那我们怎麽来声名一个变量呢? f=None 这样我们给着个变量绑定了以各None类型,我们随时可用重新绑定其它类型.这样我们 ...

随机推荐

  1. EasyUI 扩展自定义EasyUI校验规则 验证规则

    $.extend($.fn.validatebox.defaults.rules, {CHS: {validator: function (value, param) {return /^[\u039 ...

  2. 什么是集群(Cluster)技术

    什么是集群(Cluster)技术Cluster集群技术可如下定义:一组相互独立的服务器在网络中表现为单一的系统,并以单一系统的模式加以管理.此单一系统为客户工作站提供高可*性的服务.大多数模式下,集群 ...

  3. python2.0_s12_day12_html介绍

    html 就像一个裸体的人css 就像是人穿的衣服js 就像是人做的动作一.网页文件HTML的构成 1.对应规则的选择,就如同我们写python时#!/usr/bin/env python3.5 这么 ...

  4. 怎么下载tomcat的其他版本

    下载地址: http://archive.apache.org/dist/tomcat/ 里面包含tomcat的各个版本,windows版本.linux版本,tomcat7.0.x等.

  5. VS添加命令行参数main(int argc, char** argv)

  6. json 数据分析

    /* 健一健康头条 */ try { String url = "http://www.j1health.com/j1api.php/index/getJ1healthHotLists&qu ...

  7. VC项目程序运行时设置指定目录读取Dll

    方法一: 选择当前工程,右击"Properties" -> "Configuration Properties" -> "Debuggin ...

  8. hadoop错误各种原因

    NoRouteToHostException 错误描述: INFO hdfs.DFSClient: Exception in createBlockOutputStream java.net.NoRo ...

  9. JS:“分享到”之类的悬浮框的运动原理(代码)

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  10. Egret打包App Android热更新(4.1.0)

    官网教程:http://developer.egret.com/cn/github/egret-docs/Native/native/hotUpdate/index.html 详细可看官网教程,我这里 ...