Python 自学笔记----1.1实例与封装

  • 背景描述
  • 封装
    • 实例
  • 总结
    • 代码地址
  • 感悟

背景描述

初次了解了类与对象后,就可以深入学习一些面向对象的特性了:封装,继承,多态之

封装

首先还是需要从类开始,一下是劳模类:平面图形.这次稍作修改,删除了获取对象名字的方法,改成了’封装好了’的获得图形边数的方法,嗯,虽然,确实,真的封装的比较生硬,见谅:

class PlaneFigure(object):def __init__(self, name_input):  # 此处的 init 两侧有两个下划线self.name = name_input# 封装,在此处封装了判断边的方法,对外界来说不需要知道计算过程,只需要# 输入名字比如'三角形',就可以得到这个平面图形有三条边# 注:这里封装了,照抄就行,不需要知道过程是什么原理嗯~ o(* ̄▽ ̄*)odef get_sides_number(self):# 知道下也不是坏事:# == 表示判断两边是否相等# if 后面的语句计算结果如果是成立的,就执行冒号后面缩进的语句块if self.name == '三角形':print(self.name, '有三条边')

实例

这次新建一个三角形的实例对象,对象的变量名的主要作用就是做内存地址的’助记符’,指向了内存地址

# import class
from bCapsulation.PlaneFigure import PlaneFiguretriangle = PlaneFigure('三角形')# 打印一下类和变量
print('PlaneFigure is ', PlaneFigure, ';\nand triangle is ', triangle)

运行结果为:

PlaneFigure is  <class 'bCapsulation.PlaneFigure.PlaneFigure'> ;
and triangle is  <bCapsulation.PlaneFigure.PlaneFigure object at 0x0000021749B17550>

这里可以看到 PlaneFigure 是一个 class 类,全名叫’aClassAndInstance.PlaneFigure.PlaneFigure’

triangle 是一个指向内存地址为 ‘0x0000021749B17550’
的平面图形类的一个实例变量

然后运行下封装好的获得平面图形边数的方法

# 不需要知道过程就能得到三角形有三条边的结果
triangle.get_sides_number()

控制台’自动’输出了

三角形 有三条边

总结

以上的总体过程,对外界来说就是,使用者只需要告诉程序,这是个平面图形类的三角形对象,然后向程序发出请求:‘告诉我这个图形的边数’,程序就会返回边数,中间的过程对外界都是不见的,也就是把这些对外界无关紧要的内容’封装了起来’,也就是面向对象的封装性.

代码地址

https://github.com/Wsdady/LearnPython

感悟

'从面向对象开始’这个坑感觉真的有点坑啊(think in java 作者真强,仰望),这个 == 和 if 语句一出来我都有点心虚,零基础的真不能这么玩,嗯,应该是我水平还不到家吧,不过既然这么干了硬着头皮也试水到底,谢谢大家的支持!

–by Libor B. Lodestar 名远
2019.05.16

Python 自学笔记----1.1实例与封装相关推荐

  1. python自学笔记15之实例之绘图、dataframe操作、读写csv,excle

    用Python绘图,借助强大的numpy和matplotlib import numpy as np import matplotlib.pyplot as plt import pandas as ...

  2. 尚硅谷Python自学笔记

    文章目录 尚硅谷Python自学笔记 计算基础知识 进制 文本文件和字符集 Python介绍 Python入门 Pytho基本语法 数值 字符串 对象(Object) 对象的结构 算数运算符 条件判断 ...

  3. Python自学笔记6:实操案例三(十进制转换二、八、十六进制),手机充值,计算能量消耗,预测未来子女身高

    Python自学笔记6:实操案例三(十进制转换二.八.十六进制),手机充值,计算能量消耗,预测未来子女身高 杨淑娟老师网课传送门(非广告):https://www.bilibili.com/video ...

  4. Python自学笔记——视频课程来自小甲鱼零基础入门学习python

    Python自学笔记 细枝末节 / 浮点除 // 地板除 字符串 apitalize() 把字符串的第一个字符改为大写 casefold() 把整个字符串的所有字符改为小写 center(width) ...

  5. Python自学笔记9:实操案例六(千年虫,购物流程)

    Python自学笔记9:实操案例六(千年虫,购物流程) 网课传送门:第155,156讲,https://www.bilibili.com/video/BV1Sw411Z779?p=155 1.千年虫 ...

  6. 字节跳动大佬的Python自学笔记.pdf

    1. 字节跳动大佬的Python自学笔记 这是我的一个朋友自学资料包,通过这个资料包自学拿到了字节跳动的Offer, 下面是他之前入门学习Python时候的学习资料,非常全面,从Python基础.到w ...

  7. Python 自学笔记(教程)(七)

    Python 自学笔记(教程)(七) 代码 代码讲解 import time time.sleep() random random.randint() % 传送门 代码 今天的笔记很简单,就用课程作业 ...

  8. 【Python自学笔记】报错No module Named Wandb

    [Python自学笔记]已经装了wandb,还报错No module Named Wandb 方法1.重启cmd和jupyter notebook 直接把窗口和cmd页面全关了,重新打开,再次运行安装 ...

  9. python自学笔记

    https://www.cnblogs.com/secondtonone1/p/6796323.html 恋恋风辰 python自学笔记(一) 我没学过python,通过网上和一些图书资料,自学并且记 ...

最新文章

  1. OpenAI解散机器人团队,曾试图造AGI机器人,创始人:最好的决定
  2. 轻快的VIM(五):复制
  3. rocketmq 消息指定_详解RocketMQ不同类型的消费者
  4. Python入门100题 | 第080题
  5. 从思维导图学习操作系统(二)
  6. python timeout_decorator_使用timeout-decorator为python函数任务设置超时时间
  7. 美股周一暴跌触发熔断:苹果、特斯拉股价大跌
  8. Mybatis 二级缓存简单示例
  9. 关于IE6,7下面的一些兼容性问题
  10. MySQL-第十篇多表连接查询
  11. CSDN如何开启版权声明
  12. 什么叫python爬虫-终于知道python爬虫是什么意思
  13. 现汇买入价/现钞买入价/卖出价/基准价/中行折算价的概念
  14. 打开新材料世界的大门:拓扑电子材料目录问世
  15. 从 0 开始搭建 Hexo 博客
  16. css如何将div画成三角形
  17. 科技赋能拉萨之“肺”,华为助力拉鲁湿地智慧管理守护绿水青山
  18. 09_NorFlash驱动
  19. 从零开始学黑苹果-基础安装教程(10.11.6)
  20. 测试工程师面试题,你都遇到过哪些呢?

热门文章

  1. mysql nan_在MySQL数据库中插入NaN值
  2. 使用Python,提取视频文件中的音频
  3. fastreport问题集合
  4. Apache CXF框架简介
  5. 机器人及无人驾驶领域真实人才供需状况如何?企业真正需要什么样的人才?
  6. 激活函数(Relu,sigmoid,Tanh,softmax)详解
  7. ATM机多账号的实现
  8. 5种顶级逻辑思维训练法:1min 轻松上手,工作学习都能用
  9. OpenCL与OpenACC的安装
  10. 大文件上传的解决方法