class JudgeFrequentlyStartStop(object): def __init__(self, dict_code, dict_chiller_inner): self.dict_chiller_inner = dict_chiller_inner self.dict_code = dict_code def is_freq_start_stop(self): unit_status_str = '' for i in self.dict_chiller_inner['runStatus']: unit_status_str += str(i) unit_status_str_split = unit_status_str.split('1') # chiller_off_time_last = len(unit_status_str_split[-1]) * self.dict_code['samplePeriod'] chiller_off_time_last = len(unit_status_str_split[-1]) * 3 * 60 # 采样周期写死 chiller_off_count = len([1 for i in unit_status_str_split if i != '']) if chiller_off_count > 2 and chiller_off_time_last < 2700: judge_freq_start_stop = 1 # 1为频繁启停,0为正常停机 else: judge_freq_start_stop = 0 return judge_freq_start_stop