鱼C论坛

 找回密码
 立即注册
查看: 4483|回复: 20

[技术交流] 《零基础入门学习Python》44讲内容归纳

[复制链接]
发表于 2015-12-2 13:13:49 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 醉酒青牛 于 2015-12-2 13:27 编辑

小牛有话说:
        各位鱼油,大家好。我是小牛,如果您已经看完或者正在看鱼神的《零基础入门学习Python》视频,想随时复习前面的知识点却又不想花太多时间和精力重翻视频,来这里《零基础入门Python学习》整理瞅瞅小牛呕心做的的视频内容的总结吧^_^,如果觉得有用的话,可以点击所属淘贴右上角的“订阅”按钮,这样以后就能够随时看到小牛做的最新的整理了。

本期主要内容导读:
        这一期我们归纳一下鱼神第四十四讲“魔法方法:简单定制”。这一期里面鱼神主要是通过定义一个实现计时器功能的类来介绍魔法方法的用途,主要涉及到的魔法方法有 __init__,__str__,__repr____add__以及一个time模块下的localtime方法,下面将详细介绍他们的用法。
1. __init__,__str__,__repr____add__魔法方法定义过程
import time as t
class MyTimer:
    def __init__(self):                   #初始化类内的变量
        self.unit = ['年','月','天','小时','分钟','秒']      
        self.begin = 0
        self.end = 0
        self.lasted = []
        self.prompt = "尚未开始计时!"
    def __str__(self):     #实现打印一个类对象时的魔法方法
        return self.prompt
    __repr__ = __str__      #实现输出一个类对象时的魔法方法

    def __add__(self,other):    #实现两个对象的加和的魔法方法
        prompt = "总共运行了"
        result = []
        for index in range(6):
            result.append(self.lasted[index] + other.lasted[index])
            if result[index]:
                prompt += (str(result[index]) + self.unit[index])
        return prompt
    def start(self):
        print("开始计时...")
        self.begin = t.localtime()
        print()
        self.prompt = "提示,请先调用stop()停止计时!"
    def stop(self):
        if self.begin == 0:
            print("提示:请先调用start()开始计时!")
        else:
            self.end = t.localtime()
            self._calctime()
            print("结束计时...")
    def _calctime(self):
        self.prompt = "总共运行了 "
        for index in range(6):
            self.lasted.append(self.end[index] - self.begin[index])
            if self.lasted[index]:
                self.prompt += (str(self.lasted[index]) + self.unit[index])
#将对象的开始,结束变量置为初始值以方便下次调用
        self.begin = 0
        self.end = 0
调用过程如下:
>>> t1 = MyTimer()   #自动调用t1.__init__()方法
>>> t1.start()
开始计时...

>>> t1.stop()
结束计时...
>>> t1      #自动调用t1.__str__()方法
总共运行了 7秒
>>> print(t1)  #自动调用t1.__repr__()方法
总共运行了 7秒
>>> t2 = MyTimer()
>>> t2.stop()
提示:请先调用start()开始计时!
>>> t2.start()
开始计时...

>>> t2.stop()
结束计时...
>>> t2
总共运行了 21秒
>>> t1 + t2   #自动调用t1.__add__()方法
'总共运行了28秒'
2. time.localtime()方法
        用于返回一个元组,元组前六位的值是当前年、月、日、时、分、秒的值。

本帖被以下淘专辑推荐:

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2015-12-10 09:27:23 | 显示全部楼层
赞一个,加油
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2015-12-10 23:34:53 | 显示全部楼层
:handshake
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2015-12-12 11:10:40 | 显示全部楼层
好久没来了,
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2015-12-12 11:11:28 | 显示全部楼层
得重头看你的帖来温习一下
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2016-3-1 18:07:20 | 显示全部楼层
青牛 你已经很久没有更新了啊
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2016-3-1 20:45:40 | 显示全部楼层
cjfj114 发表于 2016-3-1 18:07
青牛 你已经很久没有更新了啊

,放了个寒假,现在刚开学,刚更新45讲
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2016-3-1 21:19:19 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2016-7-15 09:36:53 | 显示全部楼层
明白了,哈哈
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2016-8-24 10:59:27 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2016-8-24 11:00:18 | 显示全部楼层
学习
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2016-8-24 15:03:06 | 显示全部楼层
赞一个,谢谢大牛
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2016-8-24 16:27:28 | 显示全部楼层
O(∩_∩)O谢谢楼主
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2016-8-25 10:42:09 | 显示全部楼层
谢谢分享
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2016-9-1 12:19:37 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2016-9-1 12:22:01 | 显示全部楼层
有点晕
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2016-9-1 12:32:20 | 显示全部楼层
代码有点长啊
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2016-9-1 12:33:13 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2016-9-12 14:20:40 | 显示全部楼层
青牛加油啊
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2016-9-12 14:58:15 | 显示全部楼层
支持
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-22 14:52

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表