Python(PyS60)做的简单语音整点报时的实现

python报时功能_python3多线程实现一个语音报时,定时关机功能的应用 我是您的朋友义县游学电子科技,今天我跟大家分享一个小应用。利用python实现一个网络应用,具有定时关机功能和语音报时功能。下面我先来介绍一下python。python这门语言想必大家都听说过,就算没学习过,大家肯定也或多或少地通过互联网了解过一些。它具有入门简单,开发效率高,用途广泛等特点。您一定对于这几个优点的描述看腻了吧。老实讲,对于python而言它的这几样优点确实是其他语言所不能比拟的。... 阅读详情
主要的技术特殊点在于PyS60的定时器最多只能定2147秒。在手机上直接写的。

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()


Python(PyS60)实现简单语音整点报时 主要为大家详细介绍了Python(PyS60)实现简单语音整点报时,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 立即下载

相关推荐

给你的软件加入报时功能,只要一行代码就行了

给您的软件加入报时功能 只要一行代码 tim.exe /nowtim

python电话语音通知_Python(PyS60)实现简单语音整点报时

本文实例为大家分享了python语音整点报时的具体代码,供大家参考,具体内容如下主要的技术特殊点在于PyS60的定时器最多只能定2147秒。在手机上直接写的。import e32import audioimport timeimport appuifwimport sysimport os.pathimport marshaldef say(oclock):"""say the time in E...

weixin_39539563的博客 481

无监督学习初探:K-Means聚类与主成分分析(PCA)

K-Means适用于快速分组,但对数据分布敏感,可结合轮廓系数评估质量。PCA通过特征值分解实现线性降维,需注意非线性场景的替代方案(如UMAP)。进阶方向:聚类:谱聚类、高斯混合模型(GMM)处理复杂形状。降维:t-SNE、自编码器处理非线性结构。

weixin_69882801的博客 1453

蓝桥杯 基础练习 报时助手(Python)

Sine之舞

weixin_69833231的博客 294

海康威视4G摄像头直连实战:不用萤石云,手把手教你用ISUP SDK搞定跨网段视频流

本文详细介绍了如何通过海康威视ISUP SDK实现4G摄像头的直连通信,提供了一套零平台费、自主可控的技术方案。文章涵盖技术选型、设备端配置、服务器端开发及高级应用场景,特别适合中小型安防项目,帮助开发者解决跨网段视频流传输难题,降低长期运营成本。

weixin_27076351的博客 469

别再瞎调了!手把手教你用ADI IIO Oscilloscope配置AD936x的AGC(附Pluto SDR实测)

本文详细介绍了如何使用ADI IIO Oscilloscope工具配置AD936x系列射频捷变收发器的自动增益控制(AGC)功能,包括Slow/Fast Attack模式的参数设置与优化技巧。通过Pluto SDR硬件实测演示,帮助开发者快速掌握AGC配置方法,提升无线通信系统的接收性能。

weixin_30267785的博客 577

python报时功能_Python(PyS60)做的简单语音整点报时的实现

主要的技术特殊点在于PyS60的定时器最多只能定2147秒。在手机上直接写的。import e32import audioimport timeimport appuifwimport sysimport os.pathimport marshaldef say(oclock):"""say the time in English"""c = oclockif c > 12:c -= 12c...

weixin_39645306的博客 406

一次HTTP完整得请求过程

一次HTTP完整的请求过程 一,大致流程: 根据域名和DNS解析到服务器的IP地址(DNS+CDN) 通过ARP协议获得IP地址对应的物理机器得MAC地址 浏览器对服务器发起三次握手 建立TCP连接后发起HTTP请求报文 服务器响应HTTP请求,将响应报文返回浏览器 短连接情况下,请求结束通过TCP四次挥手关闭连接,长连接在没有访问服务器得若干时间后,进行连接关闭 浏览器得到响应信...

qq_40760617的博客 343

python报时功能_Python(PyS60)做的简单语音整点报时的实现 | 学步园

主要的技术特殊点在于PyS60的定时器最多只能定2147秒。在手机上直接写的。import e32import audioimport timeimport appuifwimport sysimport os.pathimport marshaldef say(oclock):"""say the time in English"""c = oclockif c > 12:c -= 12c...

weixin_39596668的博客 186

Cocos Creator 3D音频定位实战:从原理到沉浸感实现

3D音频定位是游戏开发中实现沉浸感的关键技术,其核心原理基于HRTF(头部相关传输函数)模型,模拟声音在空间中的传播与双耳感知差异。这项技术通过赋予声音空间坐标、距离衰减和方向属性,将音频从背景元素提升为可交互的环境线索,极大增强了虚拟世界的真实感与玩家的空间认知。在工程实践中,开发者需要深入理解声源、听者、衰减曲线与多普勒效应等基础概念,并合理运用音频池、优先级管理与动态混音等技术手段来平衡效果与性能。对于Cocos Creator开发者而言,无论是使用引擎原生的AudioSource组件构建轻量级方案,

weixin_30972263的博客 292

Ubuntu 22.04 实战:为WIFI6网卡Realtek RTL8852BE手动编译驱动指南

本文详细介绍了在Ubuntu 22.04系统上为Realtek RTL8852BE WIFI6网卡手动编译驱动的完整指南。从问题诊断、环境准备到源码获取、编译安装,逐步解决驱动缺失问题,并提供常见问题排查和性能优化建议,帮助用户充分发挥WIFI6网卡性能。

weixin_30808693的博客 478

python报时功能_Python(PyS60)实现简单语音整点报时

本文实例为大家分享了python语音整点报时的具体代码,供大家参考,具体内容如下主要的技术特殊点在于PyS60的定时器最多只能定2147秒。在手机上直接写的。import e32import audioimport timeimport appuifwimport sysimport os.pathimport marshaldef say(oclock):"""say the time in E...

weixin_39609354的博客 653

Unreal从入门到精通之 UE4 vs UE5 VR性能优化实战

这篇文章分享了UE5 VR项目的性能优化经验。作者通过对比UE4和UE5的VR模板性能,发现UE5默认帧率只有45FPS,远低于UE4的100FPS。主要性能瓶颈来自Lumen全局光照、虚拟阴影贴图等新特性。文章详细列出了12项关键优化设置,包括禁用Lumen、关闭虚拟阴影、使用前向渲染等,并分析了各项调整对性能的影响程度。特别指出删除默认的VolumetricCloud可立即提升5帧。最后建议根据场景需求平衡画质与性能,对于高帧率要求的VR项目,可能需要谨慎使用UE5或关闭其部分高级渲染功能。

TxNet 1383

python 点对点语音,Python(PyS60)实现简单语音整点报时

本文实例为大家分享了python语音整点报时的具体代码,供大家参考,具体内容如下主要的技术特殊点在于PyS60的定时器最多只能定2147秒。在手机上直接写的。import e32import audioimport timeimport appuifwimport sysimport os.pathimport marshaldef say(oclock):"""say the time in E...

weixin_28273593的博客 302

微信公众平台 - 微信内置浏览器 WeixinJSBridge.invoke(‘xxx‘) API 报错:system:access_denied(常见于微信支付、分享朋友圈/转发好友等功能)解决方案

微信支付提示System:access_denied,调用微信支付返回:system:access_denied为什么,安卓版微信支付偶尔出现system:access_denied,微信公众号开发分享出现system:access_denied,system:access_denied如何解决?微信WeixinJSBridge.invoke(‘xxx‘)API调用后出现报错,微信内部H5WeixinJSBridge.invokesystem:access_denied,使用微信jssdk时报ac

🏆 前端领域优质创作者 5145

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

python分析课堂对话相关的代码提示词和源码

由于期刊中附带了这个博客链接,二次补充相关过程的代码供大家参考【腾讯文档】毕业论文活动分析部分代码的提示词和源码参考。

东方 498

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

基础练习25- 报时助手(python答案)

基础练习 报时助手 问题描述   给定当前的时间,请用英文的读法将它读出来。   时间用时h和分m表示,在英文的读法中,读一个时间的方法是:   如果m为0,则将时读出来,然后加上“o’clock”,如3:00读作“three o’clock”。   如果m不为0,则将时读出来,然后将分读出来,如5:30读作“five thirty”。   时和分的读法使用的是英文数字的读法,其中0~20读作...

chenxiangrong的博客 1125

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

python报时功能_wxPython实现整点报时

# C盘要有个wav文件,内含报时音频import wximport time# 获取时间import wave# 波形处理import pyaudio# 播放器class MyFrame(wx.Frame):def __init__(self,parent,id):wx.Frame.__init__(self,parent,id,title="整点报时",size=(410,150),style...

weixin_39625172的博客 781

python小程序—即时动态时钟

1.完整代码: # coding=UTF-8 from turtle import * from datetime import * def Skip(step): #建立表的外框 penup() forward(step) pendown() def mkHand(name,length): #注册turtle形状,建立表针tur...

hichcock_tian的博客 2036

Python实现系统桌面时钟

Python实现系统桌面时钟

ugfffj的博客 2239

list

的底层是双向链表结构,双向链表中每个元素存储在互不相关的独立节点中,在节点中通过指针指向其前一个元素和后一个元素。,因此反向迭代器的实现可以借助正向迭代器,即:反向迭代器内部可以包含一个正向迭代器,对正向迭代器的接口进行包装即可。是可以在常数范围内在任意位置进行插入和删除的序列式容器,并且该容器可以前后双向迭代。迭代到该位置,在这段位置上迭代需要线性的时间开销;最大的缺陷是不支持任意位置的随机访问,比如:要访问。还需要一些额外的空间,以保存每个节点的相关联信息。个元素,必须从已知的位置。

xie0510_的博客 272
上一篇: 活在当下的力量
下一篇: Guy Steele博士
softworm
博客等级 码龄26年 34粉丝 24原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值