9-4就餐人数 :

在为完成练习9-1而编写的程序中, 添加一个名为number_served 的属性, 并将其默认值设置为0。
根据这个类创建一个名为restaurant 的实例; 打印有多少人在这家餐馆就餐过, 然后修改这个值并再次打印它。
添加一个名为set_number_served() 的方法, 它让你能够设置就餐人数。
调用这个方法并向它传递一个值, 然后再次打印这个值。
添加一个名为increment_number_served() 的方法, 它让你能够将就餐人数递增。
调用这个方法并向它传递一个这样的值: 你认为这家餐馆每天可能接待的就餐人数。

class Restaurant():def __init__(self, restaurant_name, cuisine_type):"""初始化属性name和type"""self.name = restaurant_nameself.type = cuisine_typeself.number_served = 0def read_number(self):"""打印餐馆有多少人"""print("The restaurant has " + str(self.number_served) + " customer now.")def set_number_served(self, number):"""设置就餐人数"""self.number_served = numberdef increment_number_served(self, number):"""增加就餐人数"""if int(number) + self.number_served <= 20:self.number_served += numberelse:print("The restaurant is full now.")restaurant = Restaurant('WTF', 'nothing')restaurant.set_number_served(5)restaurant.increment_number_served(5)
restaurant.increment_number_served(4)
restaurant.increment_number_served(6)
restaurant.increment_number_served(2)restaurant.read_number()

运行结果:

The restaurant is full now.
The restaurant has 20 customer now.

9-5 尝试登录次数 :

在为完成练习9-3而编写的User 类中, 添加一个名为login_attempts 的属性。
编写一个名为increment_login_attempts() 的方法,它将属性login_attempts 的值加1。
再编写一个名为reset_login_attempts() 的方法, 它将属性login_attempts 的值重置为0。
根据User 类创建一个实例, 再调用方法increment_login_attempts() 多次。
打印属性login_attempts 的值, 确认它被正确地递增; 然后, 调用方法reset_login_attempts() , 并再次打印属性
login_attempts 的值, 确认它被重置为0。

class User():def __init__(self, first_name, last_name, age, sex):"""用户信息"""self.name = first_name.title() + ' ' + last_name.title()self.age = str(age)self.sex = sexself.login_attempts = 0def describe_user(self):"""打印用户摘要"""print("\nName: " + self.name +"\nAge: " + self.age +"\nSex: " + self.sex)def greet_user(self):"""向用户打招呼"""if self.sex == 'female':print("Hello, my dear " + self.name + "!" )else:print("Hello, " + self.name + ".")def increment_login_attempts(self):"""增加尝试登录的次数"""self.login_attempts += 1def reset_login_attempts(self):"""重置尝试登录的次数"""self.login_attempts = 0me = User('peng', 'yifeng', 18, 'male')me.describe_user()
me.greet_user()me.increment_login_attempts()
me.increment_login_attempts()
me.increment_login_attempts()
me.increment_login_attempts()print("You have logged in " + str(me.login_attempts) + " times.")
me.reset_login_attempts()
print("Your login attempts have been resetted, now is " + str(me.login_attempts) + ".")

运行结果:

Name: Peng Yifeng
Age: 18
Sex: male
Hello, Peng Yifeng.
You have logged in 4 times.
Your login attempts have been resetted, now is 0.

《Python编程:从入门到实践》 练习 9-4 9-5相关推荐

  1. python编程 从入门到实践怎么样-python编程从入门到实践这本书怎么样

    <Python编程-从入门到实践>作者: Eric Matthes,已翻译为中文,人民邮电出版社出版. python编程从入门到实践怎么样? 我们一起看看已经学习的同学对这本书的口碑和评价 ...

  2. python编程入门指南怎么样-python编程从入门到实践这本书怎么样

    <Python编程-从入门到实践>作者: Eric Matthes,已翻译为中文,人民邮电出版社出版. python编程从入门到实践怎么样? 我们一起看看已经学习的同学对这本书的口碑和评价 ...

  3. python编程 入门到实践-终于懂了python编程从入门到实践

    Python语言是一种典型的脚本语言,简洁,语法约束少,接近人类语言.有丰富的数据结构,例如列表.字典.集合等.具有可移植性,支持面向过程和面向对象编程,并且开源.以下是小编为你整理的python编程 ...

  4. python编程 从入门到实践豆瓣-三周刷完《Python编程从入门到实践》的感受

    本文将以对话采访的形式展现 为什么会选择学习Python 语法简洁,实用,和golang部分类似,学习性价比高: 应用范围广,涉及后端,机器学习,图像处理,游戏等: 好奇这是一门怎样的语言 计划如何学 ...

  5. python入门到实践-Python编程从入门到实践(基础入门)

    Python编程从入门到实践-------基础入门 1.Python中的变量 2.Python首字母大写使用title()方法,全部大写upper()方法,全部小写lower()方法 3.Python ...

  6. python基础学习[python编程从入门到实践读书笔记(连载五)]:数据可视化项目第16章

    文章目录 下载数据 制作全球地震散点图:JSON格式 end 几个实验结果: 每日最高气温: 地震图绘制: 下载数据 CSV文件格式 在文本文件中存储数据,一个简单方式是将数据作为一系列以逗号分隔的值 ...

  7. python基础学习[python编程从入门到实践读书笔记(连载三)]:django学习笔记web项目

    文章目录 Django项目:学习笔记web网页 项目部署 参考 自己部署的网站,还是小有成就感的,毕竟踩过很多坑,实战技能也有些许进步. 网站链接:http://lishizheng.herokuap ...

  8. python基础学习[python编程从入门到实践读书笔记(连载一)]

    写在前面:本文来自笔者关于<python编程从入门到实践>的读书笔记与动手实践记录. 程序员之禅 文章目录 02变量和简单数据类型 03 列表简介 04 操作列表 05 if语句 06 字 ...

  9. pythonwhile循环love_input和while循环——Python编程从入门到实践

    Python Python开发 Python语言 input和while循环--Python编程从入门到实践 input( ) input()函数:让程序运行暂停,等待用户输入. message = ...

  10. python数据可视化从入门到实战_《Python编程从入门到实践》json数据可视化练习详解...

    <Python编程从入门到实践>16.2中,计算收盘价均值的程序有些不易看懂,结合我自己的理解进行一些说明. 使用的数据集:join格式的数据, 数据集是由多个字典为元素组成的列表.每个字 ...

最新文章

  1. [Git] 拉开发分支的代码报错
  2. python是什么编程教程-编程python是什么_谁的Python教程最好?
  3. Python 技术篇 - 查看python库都包含什么方法,查看python模块某个方法的具体用法源码,查看python模块所在的物理位置,查看python库都包含哪些属性
  4. mysql 降序_MySQL 8 新特性之降序索引底层实现
  5. 深入理解Java中异常体系
  6. javascript对象包含哪些要素_重学JavaScript 对象
  7. 真正想创业,做一番事业的人是什么样子的?
  8. PHP实反向代理-收藏
  9. Windows Server 2008 计划任务配置(任务计划程序)每分钟执行BAT
  10. ubuntn 常用命令和快捷键汇总
  11. 仿绚丽彩虹播放器程序源码
  12. vscode环境搭建:配置prettier
  13. 使用宏基因组的方法快速鉴定新冠病毒SARS-CoV2
  14. GitHub 预览 Copilot,一个 OpenAI 驱动的编码助手
  15. 喧喧聊天的协同开源办公工具环境搭建
  16. 题目60 相同字母消除法(栈)(ok)
  17. Eclipse插件安装(在线和离线方式)
  18. 基于ESP8266与Blinker(点灯科技平台)的智能遥控器设计
  19. 二十 关于gmtime、gmtime_r、localtime、localtime_r
  20. C# 2010 激活码

热门文章

  1. Android AOSP 源码 编译 android5.1.1,并刷入手机
  2. python彩色七段数码管绘制
  3. 【docker lnmp】 2、容器mysql 连接问题 getaddrinfo failed
  4. 第三章 CSS 选择器的命名
  5. Springboot 使用JPA Repository 注入失败问题
  6. 最近两周出去面试遇到的面试题(前端初级、长更)
  7. jvisualvm 连接 docker 监控springboot jvm
  8. 寒武纪行歌 - 智能驾驶大算力芯片入局者
  9. 华为M3平板升级鸿蒙系统,华为m3平板 日版刷国行 没有重力感应怎么解决?(篇二)...
  10. 使用ECS和OSS搭建个人网盘