当前位置: 首页 > news >正文

台东县网站建设_网站建设公司_测试上线_seo优化

衡水市住房和城乡规划建设网站,wordpress基于什么语言,深圳网站设计深圳网站建设,win8扁平化网站Python 类的封装 承接上一节#xff0c;学了Student类的定义及实例化#xff0c;每个实例都拥有各自的name和score。现在若需要打印一个学生的成绩#xff0c;可定义函数 print_score() 该函数为类外的函数#xff0c;如下#xff1a; 1 class Student(object):2 def …Python 类的封装     承接上一节学了Student类的定义及实例化每个实例都拥有各自的name和score。现在若需要打印一个学生的成绩可定义函数 print_score()   该函数为类外的函数如下 1 class Student(object):2 def __init__(self, name, score):3 self.name name4 self.score score5 6 May Student(May,90) # 须要提供两个属性7 Peter Student(Peter,85)8 print(May.name, May.score)9 print(Peter.name, Peter.score) 10 11 def print_score(Student): # 外部函数print_score(Student) 12 # print(%ss score is: %d %(Student.name,Student.score)) # 普通 print 写法 13 print({0}s score is: {1}.format(Student.name,Student.score)) # 建议使用 Python 2.7 .format优化写法 14 print_score(May) 15 print_score(Peter)     既然Student实例本身就拥有这些数据要访问这些数据就没有必要从外面的函数去访问我们可以直接在Student类的内部定义访问数据的函数。这样就把数据给“封装”起来了。   “封装”就是将抽象得到的数据和行为或功能相结合形成一个有机的整体即类封装的目的是增强安全性和简化编程使用者不必了解具体的实现细节而只是要通过外部接口一特定的访问权限来使用类的成员。   而这些封装数据的函数是和Student类本身是关联起来的我们称之为类的方法。那如何定义类的方法呢   就要用到对象 self 本身参考上例把 print_score() 函数写为类的方法Python2.7之后的版本推荐.format 输出写法 1 class Student(object):2 def __init__(self, name, score): 3 self.name name4 self.score score5 6 def print_score(self):7 print({self.name}s score is: {self.score}.format(selfself)) # Python 2.7 .format优化写法8 9 May Student(May,90) 10 Peter Student(Peter,85)     定义类的方法除了第一个参数是self外其他和普通函数一样。   实例调用方法只需要在实例变量上直接调用除了self不用传递其他参数正常传入注意若类的方法仅需要self不需要其他调用该方法时仅需 instance_name.function_name()   这样一来我们从外部看Student类就只需要知道创建实例需要给出name和score而如何打印都是在Student类的内部定义的这些数据和逻辑被“封装”起来了调用很容易但却不用知道内部实现的细节。   封装的另一个好处是可以给Student类增加新的方法这边的方法也可以要求传参如新增定义compare 函数如下 1 class Student(object):2 def __init__(self, name, score): 3 self.name name4 self.score score5 6 def print_score(self):7 print({self.name}s score is: {self.score}.format(selfself)) # Python 2.7 .format优化写法8 9 def compare(self,s): 10 if self.scores: 11 print(better than %d %(s)) 12 elif self.scores: 13 print(equal %d %(s)) 14 else: 15 print(lower than %d %(s)) 16 17 May Student(May,90) 18 Peter Student(Peter,85) 19 20 May.print_score() 21 Peter.print_score() 22 23 May.compare(100) 24 May.compare(90) 25 May.compare(89)  转载于:https://www.cnblogs.com/feeland/p/4415645.html
http://www.lebaoying.cn/news/30863.html

相关文章:

  • 用dw做的网站怎样弄上网上绍兴市工程建设网站
  • id97网站怎么做的深圳比较大的做网站设计公司
  • 网站底部广告钓鱼网站盗号下载
  • 网站开发证唐山seo网络推广
  • 武冈网站建设哪家好厦门创意网站建设
  • zencart 一个产品网站下单百度seo关键词优化排行
  • 双语网站建设广东省高水平建设专业网站
  • 百度网站推广方案wordpress小人无法显示
  • 网站空间有免费的吗推广普通话内容100字
  • 乐都网站建设哪家好财政网站 建设方案
  • 沈阳商城网站建设平台维护工作内容
  • wordpress 整理插件搜索引擎优化的实验结果分析
  • 网站建设教程特别棒湖南岚鸿权 威宿州网站制作公司
  • 企业门户网站建设思路网站建设培训班学费
  • 磁力链接 网站怎么做的网站在百度突然搜不到了
  • 做效果图的网站有哪些软件做电脑系统网站
  • 手机网站注意哪些问题叫别人做网站需要注意什么
  • 网站过期了外包做网站的会给你什么
  • 最好的餐饮设计网站建设大连森秀网络推广
  • 重庆知名网站建设免费如何做网站展示商品
  • 做经营性的网站需要注册什么条件实时seo排名点击软件
  • 国内营销网络途径困难刷排名seo软件
  • 做彩铃的网站微信公众网站怎么做的
  • dw网站建设教程视频教程企业信息平台查询
  • 网站编辑工具中国文化网站建设方案
  • 哪个网站专门做母婴互联网平台构建怎么写
  • 个人网站做app上传苏州营销网站建设公司排名
  • 网站建设自查工作旅游网站建设技术有哪些内容
  • 网站开发新型技术网站怎么做精准引流
  • 无线设置网站皇岗网站建设