#类(面向对象)  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. C语言代码区错误以及编译过程

    C语言代码区错误 欲想了解C语言代码段会有如何错误,我们必须首先了解编译器是如何把C语言文本信息编译成为可以执行的机器码的. 背景介绍 测试使用的C语言代码 导入标准库,定义宏变量,定义结构体,重命名 ...

  2. JUC 并发编程--07 阻塞队列版本的 生产者消费者(不使用synchronized和 lock),也有一些疑惑,最终解惑

    直接上代码: 前提是你已经 熟悉了原子类,volatile,和阻塞队列 public class JucPCdemo03 { /** * 阻塞队列的应用: 这里实现的生产者消费者,生产一个消费一个 * ...

  3. 1-3. SpringBoot基础,Java配置(全注解配置)取代xml配置

    最近突发奇想,整合一下以前一些学习笔记,分享自己这几年爬过的坑,逐步更新文章,谢谢大家的关注和支持. 这节讲一下SpringBoot的学习必须的一些基础,Java配置.其实在Spring2.0时代就已 ...

  4. SQL注入问题------JDBC编写简单登录代码

    一.什么是sql注入 sql注入:用户输入的内容, 有一些sql的特殊关键字参与字符串的拼接,完成了一条逻辑发生变化的新的SQL语句 !用代码举个例子简单说明一下: package cn.zhbit. ...

  5. Django(67)drf搜索过滤和排序过滤

    前言 当我们需要对后台的数据进行过滤的时候,drf有两种,搜索过滤和排序过滤. 搜索过滤:比如我们想返回sex=1的,那么我们就可以从所有数据中进行筛选 排序过滤:比如我们想对价格进行升序排列,就可以 ...

  6. 「模拟8.18」字符串(卡特兰数)·乌鸦喝水(树状数组,二分)·所驼门王的宝藏(tarjan,拓扑)

    最近好颓啊,所以啥都做不出来 简单说一下这次考试,分机房了,还分不同考卷,果然我还是留在二机房的蒟蒻, 大概也只有这样的简单题,才能勉强水个rank 3吧........ 其实不必管在哪个机房,努力便 ...

  7. ORA-09817:Write to audit file failed

    ERROR: ORA-09817: Write to audit file failed. --这种错误基本是磁盘空间满了 问题描述:sqlplus / as sysdba登不上,报上述ora-098 ...

  8. 『心善渊』Selenium3.0基础 — 11、Selenium对元素常用操作

    目录 1.Selenium对元素常用操作 2.Selenium对元素的其他操作 1.Selenium对元素常用操作 操作 说明 click() 单击元素 send_keys() 模拟输入 clear( ...

  9. 3、搭建 rsync备份服务器

    yum install rsync -y rsync(873):数据同步,把一台服务器上的数据以何种权限同步到另一台服务器上,是linux 系统下的数据镜像备份工具.使用快速增量备份工具Remote ...

  10. UI自动化学习笔记- Selenium元素定位及元素操作

    一.元素定位 1. 如何进行元素定位? 元素定位就是通过元素的信息或元素层级结构来定位元素的 2.定位工具 浏览器开发者工具 3.元素定位方式 Selenium提供了八种定位元素方式 id name ...