#!/usr/bin/env python
# -*- coding:utf-8 -*- class Foo:#定义类 def mail(self,email,message):#定义类的方法
print('发送邮件给%s! 信息:%s'% (email,message))
return True obj = Foo();#创建对象
obj.mail('40365257@qq.com','测试邮件信息123')#对象调用方法 self参数不用赋值,系统自动赋值 #类 对象的封装和调用
class SQLHelper:
def fetch(self,sql): #这里的self 指代后面实例化的对象obj,所有可以取得 obj对象的赋值 obj.hhost,obj.uuserane,obj.pwd
print(self.hhost)
print(self.uuserane)
print(self.pwd)
print(sql) obj = SQLHelper()
obj.hhost="c1.salt.com"
obj.uuserane="alex"
obj.pwd="123"
obj.fetch("select * from user") #========> 什么时候用面向对象 ?当函数中某一些函数具有相同参数时,可以使用面向对象的方式,将参数值一次性封装到对象,然后
#去对象中取值可用 #=====>类的公有私有=====>
class Person:
name="小鲫鱼"#公有变量
__home="cq"#两个下划线 表示类的私有变量
def take(self):
print(self.message) p=Person()
print(p.name)#公有变量访问
p.message="我是Person类"
p.take() #====>类的继承====>
class Man(Person):#从Person类继承
pass m=Man()
m.message="我是Man类"
m.take()#从父类继承了take方法 #=======类的组合====>把几个不能继承的类 组合进一个类
#下例把乌龟类和鱼类 组合进池塘类
class Turtle:
def __init__(self,x):
self.num=x class Fish:
def __init__(self,y):
self.num=y class Pool:
def __init__(self,x,y):
self.x = Turtle(x)
self.y = Fish(y) def Print_num(self):
print("水池有%d条鱼和%d只乌龟" % (self.x.num,self.y.num)) pool = Pool(1,10)
pool.Print_num()

python基础学习1-面向对象的更多相关文章

  1. python基础学习 Day19 面向对象的三大特性之多态、封装 property的用法(1)

    一.课前内容回顾 继承作用:提高代码的重用性(要继承父类的子类都实现相同的方法:抽象类.接口) 继承解释:当你开始编写两个类的时候,出现了重复的代码,通过继承来简化代码,把重复的代码放在父类中. 单继 ...

  2. python基础学习 Day19 面向对象的三大特性之多态、封装

    一.课前内容回顾 继承作用:提高代码的重用性(要继承父类的子类都实现相同的方法:抽象类.接口) 继承解释:当你开始编写两个类的时候,出现了重复的代码,通过继承来简化代码,把重复的代码放在父类中. 单继 ...

  3. python基础学习Day17 面向对象的三大特性之继承、类与对象名称空间小试

    一.课前回顾 类:具有相同属性和方法的一类事物 实例化:类名() 过程: 开辟了一块内存空间 执行init方法 封装属性 自动的把self返回给实例化对象的地方 对象:实例 一个实实在在存在的实体 组 ...

  4. python基础学习笔记——面向对象初识

    面向对象初识 python中一切皆对象. 类有两种: 新式类:在py3中所有类都是新式类 经典类:在py2中只有类本身继承了object类才叫做新式类,默认是经典类 class Person: cou ...

  5. python基础学习Day15 面向对象、类名称空间、对象名称空间 (2)

    一.类 先看一段代码: class Person: animal = '高级动物' walk_way = '直立行走' # 静态属性,静态变量,静态字段 language = '语言' def __i ...

  6. Python 基础学习 总结篇

    Python 基础学习总结 先附上所有的章节: Python学习(一)安装.环境配置及IDE推荐 Python学习(二)Python 简介 Python学习(三)流程控制 Python学习(四)数据结 ...

  7. Day1 Python基础学习

    一.编程语言分类 1.简介 机器语言:站在计算机的角度,说计算机能听懂的语言,那就是直接用二进制编程,直接操作硬件 汇编语言:站在计算机的角度,简写的英文标识符取代二进制去编写程序,本质仍然是直接操作 ...

  8. 0003.5-20180422-自动化第四章-python基础学习笔记--脚本

    0003.5-20180422-自动化第四章-python基础学习笔记--脚本 1-shopping """ v = [ {"name": " ...

  9. Day1 Python基础学习——概述、基本数据类型、流程控制

    一.Python基础学习 一.编程语言分类 1.简介 机器语言:站在计算机的角度,说计算机能听懂的语言,那就是直接用二进制编程,直接操作硬件 汇编语言:站在计算机的角度,简写的英文标识符取代二进制去编 ...

  10. (一)python基础学习

    根据廖雪峰老师的python教程写一些学习总结! Python基础学习 1.使用list和tuple (1)list Python内置的一种数据类型是列表:list.list是一种有序的集合,可以随时 ...

随机推荐

  1. [CENTOS7] 修改机器名:hostnamectl set-hostname host.domain

    # hostnamectl set-hostname host.domain

  2. 转:C# 线程同步技术 Monitor 和Lock

    原文地址:http://www.cnblogs.com/lxblog/archive/2013/03/07/2947182.html 今天我们总结一下 C#线程同步 中的 Monitor 类 和 Lo ...

  3. 使用AKLocationManager定位

    使用AKLocationManager定位 https://github.com/ideaismobile/AKLocationManager 以下是使用情况: 是不是很简单呢,我们可以将它的步骤进一 ...

  4. 工作总结 [all]

    2. 工作总结 3. 面试经验 4. 其他

  5. javascript 大中小括号的区别

    小括号 JavaScript中小括号有五种语义 语义1,函数声明时参数表 function func(arg1,arg2){ // ... } 语义2,和一些语句联合使用以达到某些限定作用 // 和f ...

  6. 【连接】Spring事物的传播行为

    http://blog.csdn.net/it_wangxiangpan/article/details/24180085 PROPAGATION_REQUIRED--支持当前事务,如果当前没有事务, ...

  7. js面向对象理解

    js面向对象理解 ECMAScript 有两种开发模式:1.函数式(过程化),2.面向对象(OOP).面向对象的语言有一个标志,那就是类的概念,而通过类可以创建任意多个具有相同属性和方法的对象.但是, ...

  8. js数组去重的方法(转)

    JS数组去重的几种常见方法 一.简单的去重方法 // 最简单数组去重法 /* * 新建一新数组,遍历传入数组,值不在新数组就push进该新数组中 * IE8以下不支持数组的indexOf方法 * */ ...

  9. python第十八课——常用内置函数

    常用内置函数:round(): print(round(3.14),round(3.99)) print(round(3145.926,-2),round(413.575,2)) abs(): pri ...

  10. ubuntu16.04更新内核--使用4.6以上的内核会让用A卡的Dell电脑更快--及卸载多余内核

    tips:我自己就是Dell的A卡电脑,用16.04桌面感觉不如fedora流畅,后来手动升级到4.6.2内核,发现可以和fedora与windows一般桌面操作流畅度. 我试过了4.7的开发版内核, ...