面向对象习题:

一:定义一个学生类。有下面的类属性:

1 姓名

2 年龄

3 成绩(语文,数学,英语)[每课成绩的类型为整数]

类方法:

1 获取学生的姓名:get_name() 返回类型:str

2 获取学生的年龄:get_age() 返回类型:int

3 返回3门科目中最高的分数。get_course() 返回类型:int

写好类以后,可以定义2个同学测试下:

zm = student('zhangming',20,[69,88,100])

返回结果:

zhangming

20

100

lq = student('liqiang',23,[82,60,99])

返回结果:

liqiang

23

99

class student(object):
name = ''
age = 0
scores = {'yuwen': 0, 'math': 0, 'english': 0} def __init__(self, name, age, scores):
self.name = name
self.age = age
self.scores['yuwen'] = scores[0]
self.scores['math'] = scores[1]
self.scores['english'] = scores[2] def get_name(self):
return self.name def get_age(self):
return self.age def get_coures(self):
"""返回科目中最高的分数"""
sorted_scores = sorted(self.scores.items(), key=lambda k: k[1], reverse=True)
return sorted_scores[0][1] zm = student('zhangming',20,[69,88,100])
print(zm.get_name())
print(zm.get_age())
print(zm.get_coures())

二:定义一个字典类:dictclass。完成下面的功能:

dict = dictclass({你需要操作的字典对象})

1 删除某个key

del_dict(key)

2 判断某个键是否在字典里,如果在返回键对应的值,不存在则返回"not found"

get_dict(key)

3 返回键组成的列表:返回类型;(list)

get_key()

4 合并字典,并且返回合并后字典的values组成的列表。返回类型:(list)

update_dict({要合并的字典})

class dict_class(object):
adict = {} def __init__(self, adict):
self.adict = adict def del_key(self, key):
del self.adict[key]
return self.adict def get_dict(self, key):
"""判断某个键是否在字典里,如果在返回键对应的值,不存在则返回"not found"""
if self.adict[key]:
return self.adict[key]
else:
return "not found" def get_key(self):
"""返回键组成的列表:返回类型;(list)"""
return [x for x, y in self.adict] def update_dict(self, bdict):
self.adict.update(bdict)
return self.adict a = dict_class({'a': 234, 'b': 456})
print(a.get_dict('a'))
# print(a.del_key('a'))
print(a.update_dict({'a':34, 's':45}))
print(a.adict)

python练习:面向对象1的更多相关文章

  1. python基础——面向对象编程

    python基础——面向对象编程 面向对象编程——Object Oriented Programming,简称OOP,是一种程序设计思想.OOP把对象作为程序的基本单元,一个对象包含了数据和操作数据的 ...

  2. Python的面向对象3

    接下来,我们接着讲Python的面向对象,在上一次的博客中,我们详细介绍了类与对象的属性,今天,我们来详细介绍一下面向对象中的方法! 1.定义实例方法 一个实例的私有属性就是以__开头的属性,无法被外 ...

  3. Python的面向对象2

    我们接着讲解Python的面向对象 1.初始化实例属性 在现实生活中,一种类型的实例会具有相同的某些属性,把这些实例划分为一个类型,则这些实例必然有相似的部分.但是,在创建实例之后,我们一个一个的为实 ...

  4. Python的面向对象1

    今天,我们来介绍Python的面向对象编程,其实面向对象并不陌生,在C++  ,Java  ,PHP中也有大量使用! 好了,我们来步入正题! 那什么是面向对象编程呢? 1. 面向对象编程是一种程序设计 ...

  5. My way to Python - Day05 - 面向对象-思维导图

    My way to Python - Day05 - 面向对象   思维导图

  6. Python进阶---面向对象的程序设计思想

    Python的面向对象 一.面向过程与面向对象的对比 面向过程的程序设计的核心是过程(流水线式思维),过程即解决问题的步骤,面向过程的设计就好比精心设计好一条流水线,考虑周全什么时候处理什么东西. 优 ...

  7. Python之面向对象一

    引子 小游戏:人狗大战 角色:人和狗 角色属性:姓名,血量,战斗力和性别(种类) 技能:打/咬 用函数实现人打狗和狗咬人的情形 def Dog(name,blood,aggr,kind): dog = ...

  8. python基础——面向对象进阶下

    python基础--面向对象进阶下 1 __setitem__,__getitem,__delitem__ 把对象操作属性模拟成字典的格式 想对比__getattr__(), __setattr__( ...

  9. python基础——面向对象进阶

    python基础--面向对象进阶 1.isinstance(obj,cls)和issubclass(sub,super) isinstance(obj,cls)检查是否obj是否是类 cls 的对象 ...

  10. python基础——面向对象的程序设计

    python基础--面向对象的程序设计 1 什么是面向对象的程序设计 面向过程的程序设计的核心是过程,过程即解决问题的步骤,面向过程的设计就好比精心设计好一条流水线,考虑周全什么时候处理什么东西. 优 ...

随机推荐

  1. The difference between a bad programmer and a good one is whether he considers his code or his data structures more important. Bad programmers worry about the code. Good programmers worry about data

    重构:改善饿了么交易系统的设计思路 原创: 盛赫 阿里巴巴中间件 昨天

  2. Tosca :配置环境参数

    # 跟Modules TestCases并列 ,右键创建 #再右键创建配置(结构自己安排) #再创建配置参数 #使用配置参数 #引用配置的环境参数

  3. Android中jsoup的混淆规则【转】

    Android中jsoup的混淆规则版权声明:转载必须注明本文转自严振杰的博客:http://blog.yanzhenjie.com 说实话这篇文章的标题和内容我觉得很水,所以读者们要是也觉得这篇文章 ...

  4. ModSecurity:一款优秀的开源WAF

    一.ModSecurity3.0介绍 ModSecurity是一个开源的跨平台Web应用程序防火墙(WAF)引擎,用于Apache,IIS和Nginx,由Trustwave的SpiderLabs开发. ...

  5. 从0开始学爬虫3之xpath的介绍和使用

    从0开始学爬虫3之xpath的介绍和使用 Xpath:一种HTML和XML的查询语言,它能在XML和HTML的树状结构中寻找节点 安装xpath: pip install lxml HTML 超文本标 ...

  6. 判断本网段有多少可用的ip地址

    为了提高效率,使用多线程方式同时ping. 但是如果开启255个线程,又会因为网络端口太拥挤,会被判定为无法ping通.所以本例使用java自带线程池,线程池的连接数还不能太大,启动了15个线程. 等 ...

  7. 《楞严经四种清净明诲》 (转自学佛网:http://www.xuefo.net/nr/article56/559965.html)

    <楞严经四种清净明诲> 佛告阿难:“汝常闻我毗奈耶中,宣说修行三决定义.所谓摄心为戒,因戒生定,因定发慧,是则名为三无漏学. “阿难,云何摄心,我名为戒? “若诸世界六道众生其心不淫,则不 ...

  8. Python json序列化时default/object_hook指定函数处理

    在Python中,json.dumps函数接受参数default用于指定一个函数,该函数能够把自定义类型的对象转换成可序列化的基本类型.json.loads函数接受参数objec_thook用于指定函 ...

  9. antd 用 customize-cra 方式引入 sass

    antd 用 customize-cra 方式引入 sass 只需要安装:node-sass 即可

  10. Vue + ElementUI的电商管理系统实例03 用户列表

    1.通过路由展示用户列表页 新建user文件夹,里面新建Users.vue文件: <template> <div> <h3>用户列表组件</h3> &l ...