一枚小萌新 发表于 2020-5-8 16:45:18

在魔法方法 简单定制一课中

import time as t
class MyTimer:
    def start(self):
      self.begin = t.localtime()
      print('it has begun')
    def stop(self):
      self.end = t.localtime()
      self._calc()
      print('it has stopped')
    def _calc(self):
      self.lasted = []
      self.prompt = '总共运行'
      for index in range(6):
            self.lasted.append(self.end - self.begin)
            self.prompt += str(self.lasted)
      print(self.prompt)

在pycharm中的时间差一直都是000000,而在idle中则可以正常运行这是为什么呢???

KevinHu 发表于 2020-5-8 16:47:35

因为在代码里你只是定义了这个类,而没有去调用方法,在idle运行后可以在交互式模式下调用刚刚定义的类

老八秘制 发表于 2020-5-8 17:19:31

IDLE里面允许程序运行完之后继续在shell里面输入内容(调用函数或定义类),而pycharm会直接关闭程序,不允许再输入内容

一枚小萌新 发表于 2020-5-9 16:43:03

老八秘制 发表于 2020-5-8 17:19
IDLE里面允许程序运行完之后继续在shell里面输入内容(调用函数或定义类),而pycharm会直接关闭程序,不允 ...

我在接下来调用了这个函数了 但是pycharm计算出来的是000000

一枚小萌新 发表于 2020-5-9 16:43:41

KevinHu 发表于 2020-5-8 16:47
因为在代码里你只是定义了这个类,而没有去调用方法,在idle运行后可以在交互式模式下调用刚刚定义的类

我在接下来调用了这个函数了 但是pycharm计算出来的是000000
页: [1]
查看完整版本: 在魔法方法 简单定制一课中