#类(面向对象)  PageObject设计模式  unittest 知识体系

#函数式编程
import datetime
book_info = {
"title":"Python",
"price":"33.1",
"auther":"毛桃",
"publisher":"北京大学",
"pubdate":datetime.datetime.today()
}

def seacher_book(book):
print("这本书的主题是:{}".format(book_info["title"]))
print("这本书的价格是:{}".format(book_info["price"]))
print("这本书的作者是:{}".format(book_info["auther"]))
print("这本书的出本社是:{}".format(book_info.get("publisher")))
print("这本书的出版时间是:{}".format(book_info.get("pubdate")))
#
# if __name__ == '__main__':
# seacher_book(book_info)

#构造方法
# class Book:
# def __init__(self,title,author,price,publisher,pubdate):
# self.title = title
# self.author = author
# self.price = price
# self.publisher = publisher
# self.pubdate = pubdate
#
# book = Book("Selenium",'Teacher',"43.33","清华大学",datetime.datetime.today())
# print(book.title)
# print(book.author)
# print(book.price)
# print(book.publisher)
# print(book.pubdate)

#类构造函数
# class Book:
# def __init__(self,title,author,price,publisher,pubdate):
# self.title = title
# self.author = author
# self.price = price
# self.publisher = publisher
# self.pubdate = pubdate
#
# def seacher_book(self):
# print("这本书的主题是:{}".format(self.title))
# print("这本书的价格是:{}".format(self.price))
# print("这本书的作者是:{}".format(self.author))
# print("这本书的出本社是:{}".format(self.publisher))
# print("这本书的出版时间是:{}".format(self.pubdate))
#
# if __name__ == '__main__':
# book = Book("Selenium",'Teacher',"43.33","清华大学",datetime.datetime.today())
# book.seacher_book()

#默认值的写法
# class Book:
# def __init__(self,
# title = "Appium测试",
# author = "",
# price = 0.0,
# publisher = None,
# pubdate = datetime.datetime.now()):
# self.title = title
# self.author = author
# self.price = price
# self.publisher = publisher
# self.pubdate = pubdate
#
# def seacher_book(self):
# print("这本书的主题是:{}".format(self.title))
# print("这本书的价格是:{}".format(self.price))
# print("这本书的作者是:{}".format(self.author))
# print("这本书的出本社是:{}".format(self.publisher))
# print("这本书的出版时间是:{}".format(self.pubdate))
#
# if __name__ == '__main__':
# book = Book("Selenium")
# book.seacher_book()

# #类的继承
# #父类
# class Book:
# def __init__(self,title,author,price):
# self.title = title
# self.author = author
# self.price = price
#
# def seacher_book(self):
# print("这本书的主题是:{}".format(self.title))
# print("这本书的作者是:{}".format(self.author))
# print("这本书的价格是:{}".format(self.price))
#
# #子类
# class ReadBook(Book):
# def readbook(self):
# print("该书正在读中...")
#
#
# #实例化子类
# book = ReadBook("Python经典","Tao","11.42")
# book.seacher_book()
# book.readbook()

#类的重写
#父类
class Book:
def __init__(self,title,author,price):
self.title = title
self.author = author
self.price = price

def seacher_book(self):
print("这本书的主题是:{}".format(self.title))
print("这本书的作者是:{}".format(self.author))
print("这本书的价格是:{}".format(self.price))

#子类
class ReadBook(Book):
#构造方法 --初始化方法 (放的是公共的东西)
def __init__(self,title,author,price,publisher,pubdate):
Book.__init__(self,title,author,price)
self.publisher = publisher
self.pubdate = pubdate

def readbook(self):
print("该书正在读中...")

def seacher_book(self):
print("这本书的主题是:{}".format(self.title))
print("这本书的价格是:{}".format(self.price))
print("这本书的作者是:{}".format(self.author))
print("这本书的出本社是:{}".format(self.publisher))
print("这本书的出版时间是:{}".format(self.pubdate))

#实例化子类
book = ReadBook("Python经典","Tao","11.42","清华大学出版社",datetime.datetime.now())
book.readbook()
book.seacher_book()

python基础之面向对象OOP的更多相关文章

  1. Python 基础 四 面向对象杂谈

    Python 基础  四  面向对象杂谈 一.isinstance(obj,cls) 与issubcalss(sub,super) isinstance(obj,cls)检查是否obj是否是类 cls ...

  2. 自学Python之路-Python基础+模块+面向对象+函数

    自学Python之路-Python基础+模块+面向对象+函数 自学Python之路[第一回]:初识Python    1.1 自学Python1.1-简介    1.2 自学Python1.2-环境的 ...

  3. 二十. Python基础(20)--面向对象的基础

    二十. Python基础(20)--面向对象的基础 1 ● 类/对象/实例化 类:具有相同属性.和方法的一类人/事/物 对象(实例): 具体的某一个人/事/物 实例化: 用类创建对象的过程→类名(参数 ...

  4. python基础,函数,面向对象,模块练习

    ---恢复内容开始--- python基础,函数,面向对象,模块练习 1,简述python中基本数据类型中表示False的数据有哪些? #  [] {} () None 0 2,位和字节的关系? # ...

  5. (转)Python成长之路【第九篇】:Python基础之面向对象

    一.三大编程范式 正本清源一:有人说,函数式编程就是用函数编程-->错误1 编程范式即编程的方法论,标识一种编程风格 大家学习了基本的Python语法后,大家就可以写Python代码了,然后每个 ...

  6. Python之路【第六篇】python基础 之面向对象(一)

    一.三大编程范式 1.面向过程编程 2.函数式编程 3.面向对象编程 二.编程进化论 1.编程最开始就是无组织无结构,从简单控制流中按步写指令 2.从上述的指令中提取重复的代码块或逻辑,组织到一起(比 ...

  7. Day7 - Python基础7 面向对象编程进阶

    Python之路,Day7 - 面向对象编程进阶   本节内容: 面向对象高级语法部分 经典类vs新式类 静态方法.类方法.属性方法 类的特殊方法 反射 异常处理 Socket开发基础 作业:开发一个 ...

  8. Python基础7 面向对象编程进阶

    本节内容: 面向对象高级语法部分 经典类vs新式类 静态方法.类方法.属性方法 类的特殊方法 反射 异常处理 Socket开发基础 作业:开发一个支持多用户在线的FTP程序 面向对象高级语法部分 经典 ...

  9. python基础(八)面向对象的基本概念

    作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 谢谢逆水寒龙,topmad和Liqing纠错 Python使用类(class)和对 ...

随机推荐

  1. MinkowskiEngine基准测试

    MinkowskiEngine基准测试 介绍卷积层和小型U网络的前馈和后馈通过时间.可以将具有相同张量步幅,步幅和内核偏移的内核映射重新用于其他层,可以在大型nueral网络中使用的所有层上,分摊此页 ...

  2. 用NVIDIA-TensorRT构造深度神经网络

    用NVIDIA-TensorRT构造深度神经网络 Deploying Deep Neural Networks with NVIDIA TensorRT NVIDIA TensorRT是一个用于生产环 ...

  3. CUDA 内存统一分析

    CUDA 内存统一分析 关于CUDA 编程的基本知识,如何编写一个简单的程序,在内存中分配两个可供 GPU 访问的数字数组,然后将它们加在 GPU 上. 本文介绍内存统一,这使得分配和访问系统中任何处 ...

  4. 【dp】背包问题

    01背包 呐,为什么叫它01背包呢,因为装进去就是1,不装进去就是0.所以针对每个物品就两种状态,装,不装(请允许我用这么老套的开篇,相信听过很多次背包讲解的人,大多都是这个开篇的)所以咯,我这个背包 ...

  5. k8s-nginx二进制报Illegal instruction (core dumped)

    1.环境 系统:CentOS 7.3 内核:x86 环境:虚拟机 2.问题 收到一个现场问题,k8s环境中nginx的pod都启动异常. #kubectl get pod |grep nginx ng ...

  6. 【linux】驱动-15-定时器

    目录 前言 15. 定时器 15.1 内核函数汇总 15.2 内核滴答 15.3 相关结构体 15.4 setup_timer() 设置定时器 15.5 add_timer() 向内核添加定时器 15 ...

  7. 关于kubernetes的十七个实验(二)

    写在开头 时隔好几天,结束了毕业设计中期答辩,更新第二节. 实验二与Kubeadm Kubeadm解决了以下问题:处理TLS加密配置,部署核心Kubernetes组件并确保其他节点可以轻松加入集群. ...

  8. DOS命令行(6)——Windows网络状态及用户管理

    ipconfig --查看计算机中适配器的TCP/IP配置信息 命令格式: ipconfig [/allcompartments] [/? | /all | /renew [adapter] | /r ...

  9. js笔记13

    1.js操作css样式 div.style.width="100px".在div标签内我们添加了一个style属性,并设定了width值,这种写法会给标签带来大量的style属性, ...

  10. 双向链表(DoubleLinkList)

    双向链表 有关链表的知识可以点击我上篇文章这里就不再赘述LinkedList 双向链表也叫双链表,是链表的一种,它的每个数据结点中都有两个指针,分别指向直接后继和直接前驱.所以,从双向链表中的任意一个 ...