最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python(PyS60)實(shí)現(xiàn)簡單語音整點(diǎn)報(bào)時

 更新時間:2019年11月18日 09:43:31   作者:softworm  
這篇文章主要為大家詳細(xì)介紹了Python(PyS60)實(shí)現(xiàn)簡單語音整點(diǎn)報(bào)時,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文實(shí)例為大家分享了python語音整點(diǎn)報(bào)時的具體代碼,供大家參考,具體內(nèi)容如下

主要的技術(shù)特殊點(diǎn)在于PyS60的定時器最多只能定2147秒。在手機(jī)上直接寫的。

import e32
import audio
import time
import appuifw
import sys
import os.path
import marshal
 
def say(oclock):
  """say the time in English"""
  c = oclock
  if c > 12:
    c -= 12
  cs = ['zero', 'one', 'two', 'three', 'four', 'five', 'six', 'seven', 'eight', 'nine', 'ten', 'eleven', 'twelve'][c]
  audio.say("it's " + cs + " o'clock.")
  
def say_current():
  global Sayflags
  t = time.localtime()
  # say according to configuration
  if Sayflags[int(t[3])] == 1:
    say(t[3])
  
def on_oclock():
  """when an o'clock arrived"""
  say_current()
  start_timer()
  
def start_timer():
  """start a timer that will be reached at next o'clock"""
  global Timer
  lt = time.localtime()
  d = 60 * (59 - lt[4]) + 61 - lt[5]
  if d>2147:
    Timer.after(2147, lambda : Timer.after(d-2147, on_oclock)) 
  else:
    Timer.after(d, on_oclock)
  
def clock_names():
  return [u'0:00', u'1:00', u'2:00', u'3:00', u'4:00', u'5:00', u'6:00', u'7:00', u'8:00', u'9:00', u'10:00', u'11:00', u'12:00', u'13:00', u'14:00', u'15:00', u'16:00', u'17:00', u'18:00', u'19:00', u'20:00', u'21:00', u'22:00', u'23:00']
  
def list_handler():
  """set flag and refresh the listbox"""
  global Lb
  global Sayflags
  c = Lb.current()
  Sayflags[c] = 1 - Sayflags[c]
  Lb.set_list(list_content(), c)
 
def list_content():
  global Sayflags
  icons = [appuifw.Icon(u"z:\\resource\\apps\\avkon2.mif", 16506, 16507), appuifw.Icon(u"z:\\resource\\apps\\avkon2.mif", 16504, 16505)] # unchecked, unchecked
  return map(lambda s, f: tuple([s, icons[f]]), clock_names(), Sayflags)
  
def exit_handler():
  global Lock
  global Timer
  global Standalone
  Timer.cancel()
  save_cfg()
  if not Standalone:
    Lock.signal()
  else:
    appuifw.app.set_exit()
 
def save_cfg():
  global Sayflags
  try:
    f = open(Configfile, 'wb')
    marshal.dump(Sayflags, f)
    f.close()
  except:
    pass
  
def load_cfg():
  global Sayflags
  try:
    f = open(Configfile, 'rb')
    Sayflags = marshal.load(f)
    f.close()
  except:
    pass
 
# Testing code
def test():
  say_current()
  #on_oclock()
  #for n in range(1,13):
  #  say(n)
#test()
 
def main():
  global Standalone
  appuifw.app.title = u'Audio Clock'
  appuifw.app.exit_key_handler = exit_handler
  appuifw.app.body = Lb
  if time.localtime()[4] == 0:
    say_current()
  start_timer()
  if not Standalone:
    Lock.wait()
  
Standalone = True
Timer = e32.Ao_timer()
Lock = e32.Ao_lock()
Configfile = os.path.abspath(os.path.dirname(sys.argv[0])) + '\\audioclock.cfg'
Sayflags = [0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 1] #24 clocks' flags
load_cfg()
Lb = appuifw.Listbox(list_content(), list_handler)
main()

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • python制作企業(yè)郵箱的爆破腳本

    python制作企業(yè)郵箱的爆破腳本

    這篇文章主要介紹了python制作企業(yè)郵箱的爆破腳本的相關(guān)資料,需要的朋友可以參考下
    2016-10-10
  • 詳解Selenium 元素定位和WebDriver常用方法

    詳解Selenium 元素定位和WebDriver常用方法

    這篇文章主要介紹了詳解Selenium 元素定位和WebDriver常用方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-12-12
  • python正則實(shí)現(xiàn)計(jì)算器功能

    python正則實(shí)現(xiàn)計(jì)算器功能

    這篇文章主要為大家詳細(xì)介紹了python正則實(shí)現(xiàn)計(jì)算器功能,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-12-12
  • python實(shí)現(xiàn)同級目錄調(diào)用的示例詳解

    python實(shí)現(xiàn)同級目錄調(diào)用的示例詳解

    同級目錄指的是位于同一級別的文件夾,這些文件夾具有相同的層級結(jié)構(gòu),它們相互平行,沒有一個被包含在另一個之中,本文將給大家介紹python實(shí)現(xiàn)同級目錄調(diào)用的示例,需要的朋友可以參考下
    2024-06-06
  • python中__init__方法知識點(diǎn)詳解

    python中__init__方法知識點(diǎn)詳解

    Python中常會看到在很多類中都有一個__init__函數(shù),該函數(shù)有什么作用,又該如何使用呢,下面這篇文章主要給大家介紹了關(guān)于python中__init__知識點(diǎn)的相關(guān)資料,需要的朋友可以參考下
    2023-04-04
  • PyQt5 QFrame控件的用法詳解

    PyQt5 QFrame控件的用法詳解

    在PyQt5中,QFrame是一個重要的基類,它提供了邊框樣式、陰影效果、形狀等屬性,可以幫助開發(fā)者實(shí)現(xiàn)豐富多彩的界面效果,本文將結(jié)合實(shí)際案例,詳細(xì)介紹QFrame在PyQt5中的用法,需要的朋友可以參考下
    2024-08-08
  • django 快速啟動數(shù)據(jù)庫客戶端程序的方法示例

    django 快速啟動數(shù)據(jù)庫客戶端程序的方法示例

    這篇文章主要介紹了django 快速啟動數(shù)據(jù)庫客戶端程序的方法示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-08-08
  • python實(shí)現(xiàn)XML解析的方法解析

    python實(shí)現(xiàn)XML解析的方法解析

    這篇文章主要介紹了python實(shí)現(xiàn)XML解析的方法解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-11-11
  • Python GUI編程之tkinter 關(guān)于 ttkbootstrap 的使用詳解

    Python GUI編程之tkinter 關(guān)于 ttkbootstrap 的使用

    ttkbootstrap 是一個基于 tkinter 的界面美化庫,使用這個工具可以開發(fā)出類似前端 bootstrap 風(fēng)格的 tkinter 桌面程序,這篇文章主要介紹了Python GUI編程之tkinter 關(guān)于 ttkbootstrap 的使用詳解,需要的朋友可以參考下
    2022-03-03
  • 深入理解Python中裝飾器的用法

    深入理解Python中裝飾器的用法

    裝飾器的使用是Python的高級技巧之一,通過Decorator裝飾器能夠帶來函數(shù)式編程中所需的很多特性,這里我們就來跟隨文章一同深入理解Python中裝飾器的用法,需要的朋友可以參考下
    2016-06-06

最新評論

怀集县| 鄂伦春自治旗| 沂源县| 固始县| 墨江| 乡城县| 托克逊县| 扎兰屯市| 公主岭市| 延津县| 霍州市| 调兵山市| 蕉岭县| 织金县| 商水县| 梅州市| 噶尔县| 内江市| 南皮县| 淳安县| 当雄县| 黔江区| 古蔺县| 姚安县| 神池县| 巫山县| 乌兰浩特市| 呼和浩特市| 祁东县| 张家川| 南川市| 济南市| 随州市| 台东市| 宣化县| 麟游县| 赤壁市| 逊克县| 突泉县| 芒康县| 获嘉县|