class Dog():'''模拟小狗'''def __init__(self,name,age):'''初始化属性name和age'''self.name = nameself.age = agedef sit(self):'''模拟小狗被命令时蹲下'''print(self.name.title() + ' is now sitting!')def roll_over(self):'''模拟小狗被命令是打滚'''print(self.name.title() + ' rolled over!')def update_age(self,age):'''更新年龄'''self.age = agemy_dog = Dog('marry',3)
print("My dog' name is " + my_dog.name.title() + ".")
print("It is " + str(my_dog.age) + " years old.")
my_dog.sit()
my_dog.roll_over()# 修改属性的值两种方式
# 1.直接修改
# 2.通过方法修改my_dog.age = 4 # 方法一
print("It is " + str(my_dog.age) + " years old.")my_dog.update_age(5) # 方法二
print("It is " + str(my_dog.age) + " years old.")# 继承父类Dog
class Big_Dog(Dog):'''模拟特殊的狗,体型变大'''#重写父类方法def __init__(self,name,age,weight):'''初始化属性name和age'''super().__init__(name,age)self.weight = weight# 添加新方法def warning(self):print("This is a big dog! Please be careful!")my_big_dog = Big_Dog('boss',6,60)
my_big_dog.warning()
def get_formatted_name(first,middle,last):'''生成整洁的姓名'''full_name = first + ' ' + middle + ' ' + lastreturn full_name.title()# formatted_name = get_formatted_name('janis','joplin')# print(formatted_name)
import unittestfrom name_function import get_formatted_nameclass NameTestCase(unittest.TestCase):'''测试name_function.py'''def test_first_last_name(self):'''能够正确地处理'''formatted_name = get_formatted_name('janis','sss','joplin')self.assertEqual(formatted_name,'Janis Sss Joplin')# def test_first_last_name1(self):#     '''不能够正确地处理'''#     formatted_name = get_formatted_name('janis','joplin')#     self.assertEqual(formatted_name,'Janis Sss Joplin')if __name__ == "__main__":unittest.main()
class AnonymousSurvey():'''收集匿名调查问卷的答案'''def __init__(self, question):'''存储一个问题,并为存储答案做准备'''self.question = questionself.responses = []def show_question(self):'''显示调查问卷'''print(self.question)def store_response(self, new_response):'''存储单份调查答卷'''self.responses.append(new_response)def show_result(self):'''显示收集到的所有答卷'''print("Survey result:")for response in self.responses:print('- ' + response)
import unittestfrom survey import AnonymousSurveyclass TestAnonymousSurvey(unittest.TestCase):'''测试survey.py'''def test_store_single_response(self):'''测试单个答案会被妥善存储'''question = "What language did you first learn to speak?"my_survey = AnonymousSurvey(question)my_survey.store_response('English')self.assertIn('English', my_survey.responses)def test_store_three_response(self):'''测试三个答案会被妥善存储'''question = "What language did you first learn to speak?"my_survey = AnonymousSurvey(question)responses = ['English', 'Chinese', 'Spanish']for response in responses:my_survey.store_response(response)for response in responses:self.assertIn(response,my_survey.responses)# setUp()方法,使我们只需创建对象一次。# def setUp(self):#     question = "What language did you first learn to speak?"#     self.my_survey = AnonymousSurvey(question)#     self.responses = ['English', 'Chinese', 'Spanish']## def test_store_single_response(self):#     '''测试单个答案会被妥善存储'''#     self.my_survey.store_response(self.responses[0])#     self.assertIn(self.responses[0], self.my_survey.responses)## def test_store_three_response(self):#     '''测试三个答案会被妥善存储'''#     for response in self.responses:#         self.my_survey.store_response(response)#     for response in self.responses:#         self.assertIn(response,self.my_survey.responses)if __name__ == "__main__":unittest.main()# 常用断言方法:
# assertEqual(a,b)         核实a==b
# assertNotEqual(a,b)      核实a!=b
# assertTrue(x)            核实x为True
# assertFalse(x)           核实x为False
# assertIn(item,list)      核实item在list中
# assertNotIn(item,list)   核实item不在list中# 运行测试用例时,在输出行会发现,每通过一个单元测试时候打印一个句点;引发错误时,打印一个E;
# 测试导致断言失败时,打印一个F。可通过观察这些结果来获悉有多少个测试通过。

python 学习day7相关推荐

  1. python学习Day7 数据类型的转换,字符编码演变历程

    一.数据类型的转换 1.1.1.字符转列表:lst1 = str.split(默认空格,也可依据指定字符分界),若无分界字符,就没法拆分,这时可以直接放进list转成列表 ----> s1 = ...

  2. Python学习 Day7 Python3 函数

    Python3 函数 函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段. 函数能提高应用的模块性,和代码的重复利用率.你已经知道Python提供了许多内建函数,比如print().但你 ...

  3. Python学习Day7

    今日内容:1.数据类型及内置方法:listtupledictset一.列表类型 ========================基本使用=======================1.用途:记录多个 ...

  4. python学习---day7

    数据分析 第一步:采集数据(数据来源:爬虫(网络数据来源).调查问卷收集.从专门的公司买数据.公司建立的数据库等) 第二步:数据预处理(工具:python.excel.使用双手) 第三步:借助算法.模 ...

  5. 个人python学习-Day7面向对象基础(上)

    一.面向对象介绍 1.概述 面向过程:根据业务逻辑从上到下写代码 函数式:将某功能代码封装到函数中,日后便无需重复编写,仅调用函数即可 面向对象编程:将数据与函数绑定到一起,进行封装,这样能够更快速的 ...

  6. pygame是python的一个库吗,python学习pygame,,基本库导入impor

    python学习pygame,,基本库导入impor 基本库导入 import pygame import sys from pygame.locals import * 初始化 pygame.ini ...

  7. python科学计数法转换_对比Python学习Go 基本数据结构

    公众号文章不方便更新,可关注底部「阅读原文」博客,文章随时更新. 本篇是「对比 Python 学习 Go」[1] 系列的第三篇,本篇文章我们来看下 Go 的基本数据结构.Go 的环境搭建,可参考之前的 ...

  8. python学习------tab补全

    python学习------tab补全   python也可以进行tab键补全 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 #!/usr/bin/env  ...

  9. Python学习day5作业-ATM和购物商城

    Python学习day5作业 Python学习day5作业 ATM和购物商城 作业需求 ATM: 指定最大透支额度 可取款 定期还款(每月指定日期还款,如15号) 可存款 定期出账单 支持多用户登陆, ...

最新文章

  1. SystemML大规模机器学习,优化算子融合方案的研究
  2. 无生命的AI算不上「智能」
  3. linux下新文件权限设置之umask的理解
  4. 【项目实战】汽车金融评分卡
  5. Android Weekly Notes Issue #218
  6. YAML_15 include and roles
  7. 一份招聘需求的分析 (转载)
  8. 计算机网络 考研复试常见题汇总
  9. MATLAB 结构矩阵和单元矩阵
  10. 公司邮箱域名注册申请,域名邮箱如何解析?邮箱域名是什么?
  11. 细说 Java 中的浅克隆与深克隆
  12. python 正态分布图像_使用Python实现正态分布、正态分布采样
  13. 计算机的收获初一作文,收获的作文(精选8篇)
  14. 2023年30道经典软件测试面试题,等你来看!
  15. 五年Android开发大厂面经总结,吐血整理2022Android面试题合集(符解析)你确定不看看?
  16. 【数据分析】搜索和非结构化数据分析值得关注的5大趋势
  17. Android事件分发浅谈
  18. 给li标签中的span设置属性margin-bottom不生效
  19. DNF域名解析全过程
  20. Ubuntu的sources.list文件

热门文章

  1. 上海二胎办理户口登记资料
  2. Tessellation on Any Budget
  3. 使用Python,OpenCV构建移动文档扫描仪
  4. 千万别对女项目经理有幻想!
  5. java web 开发之道_《Java Web开发之道》PDF 下载
  6. 【python角谷猜想】
  7. js时间戳转换年月日
  8. 独家微信域名封杀检测接口
  9. 2006年十二生肖运势(收藏)
  10. 科众集团聚力呈现2019创新服务峰会——“碰撞·革新”