真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

python自定義時(shí)鐘類、定時(shí)任務(wù)類-創(chuàng)新互聯(lián)

這是我使用python寫的第一個(gè)類(也算是學(xué)習(xí)面向?qū)ο笳Z言以來正式寫的第一個(gè)解耦的類),記錄下改進(jìn)的過程。

目前成都創(chuàng)新互聯(lián)已為上千余家的企業(yè)提供了網(wǎng)站建設(shè)、域名、雅安服務(wù)器托管、綿陽服務(wù)器托管、企業(yè)網(wǎng)站設(shè)計(jì)、景谷網(wǎng)站維護(hù)等服務(wù),公司將堅(jiān)持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長(zhǎng),共同發(fā)展。

分析需求

最初,因?yàn)槭褂胻ime模塊顯示日期時(shí),每次都要設(shè)置時(shí)間字符串的格式,挺麻煩,但還是忍了。
后來,在處理多線程任務(wù)時(shí)需要實(shí)現(xiàn)定時(shí)控制的功能,更麻煩,終于決定自己做一個(gè)解決這些問題的通用代碼(雖然網(wǎng)上有現(xiàn)成的模塊,但親手編寫這部分代碼正好能鍛煉一下我的面向?qū)ο缶幊蹋?/p>

分析框架

剛開始,我計(jì)劃做一個(gè)模仿時(shí)鐘的抽象類,讓它獨(dú)立運(yùn)行在一個(gè)線程中,讓它提供顯示日期、計(jì)時(shí)、設(shè)置定時(shí)任務(wù)的方法……然而由于缺乏規(guī)劃,編程亂糟糟的,這些方法的代碼和變量交雜在一起,難以入目,更難以擴(kuò)展……氣得重構(gòu)代碼,這次把顯示日期、計(jì)時(shí)、設(shè)置定時(shí)任務(wù)三大功能分別抽象成三個(gè)類,相互解耦,各自獨(dú)立運(yùn)行,代碼變得簡(jiǎn)潔多了。
ok,舊代碼就藏在git的歷史記錄里吧,這里貼出重構(gòu)后的代碼。

顯示時(shí)間的類

import time
import threading


class _Clock:
  """
  自定義的時(shí)鐘類,用于獲取幾種不同格式的當(dāng)前時(shí)間。
   decimal : 設(shè)置time_float的精度,控制其保留幾位小數(shù)。
   time_diff : 設(shè)置該時(shí)鐘與UTC+0時(shí)區(qū)的時(shí)差。如果不設(shè)置,會(huì)自動(dòng)采用
   本地時(shí)區(qū)。
  """

  def __init__(self, name=None, decimal=3, time_diff=None):
    self.name = name
    self.decimal = decimal
    self.time_diff = time_diff
    self.time_format = "%Y/%m/%d %H:%M:%S" # 時(shí)間字符串的格式

  @property
  def time_float(self):
    """ UTC+0時(shí)區(qū)的時(shí)間戳,精度由self.decimal決定 """
    return round(time.time(), self.decimal)

  @property
  def time_int(self):
    """ UTC+0時(shí)區(qū)的時(shí)間戳,精度為秒 """
    return int(time.time())

  @property
  def time_tuple(self):
    """ 本地時(shí)區(qū)的時(shí)間元組 """
    if self.time_diff == None:
      return time.localtime(self.time_int)
    else:
      return time.gmtime(self.time_int+self.time_diff)

  @property
  def time_str(self):
    """ 本地時(shí)間的格式化字符串 """
    return time.strftime(self.time_format, self.time_tuple)

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。


網(wǎng)站題目:python自定義時(shí)鐘類、定時(shí)任務(wù)類-創(chuàng)新互聯(lián)
當(dāng)前URL:http://weahome.cn/article/dddopc.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部