V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
Er0s
V2EX  ›  Python

用 Python 写了个文字转语音的玩意,求指教

  •  
  •   Er0s · 2016-09-26 15:05:56 +08:00 · 2910 次点击
    这是一个创建于 2982 天前的主题,其中的信息可能已经有所发展或是发生改变。

    刚把简明 Python 教程粗略的看了一遍,想练练手,就借助百度翻译的接口,用 Python2.7 写了这个小玩意

    TTSpy

    目前我遇到了五个问题:

    • 在 cmd 和 IDLE 下运行,显示的 logo 不一致
    • 用 urllib.quote()无法处理其他语言,只能处理中文和英文
    • 无法自定义文本,只能硬编码,用户通过控制台传入的文本,程序根本不处理
    • 在 cmd 下无法播放,只能在 IDLE 下运行才能听到声音
    • 有些句子无法播放

    希望大家帮忙看看怎么修改才能将以上的问题解决掉,顺便求解如何简化代码。十分感谢 ⁄(⁄ ⁄•⁄ω⁄•⁄ ⁄)⁄.

    7 条回复    2016-09-29 16:28:24 +08:00
    264768502
        1
    264768502  
       2016-09-27 09:59:20 +08:00   ❤️ 1
    def Error(slef), 拼写
    print 改用函数吧,不要用 语句
    url 要 urlencode, 再 open

    cmd 和 IDLE 在 windows 的兼容输出就不要想了...太折腾了
    所有字符串内部都用 unicode,输出的时候(比如 print)先 encode 成对应的环境的编码格式,比如 cmd 下,一般都是 GBK
    至于声音的播放,如果有 wav 的话,又只考虑 Windows 的话,就直接用 winsound.PlaySound
    如果非要 mp3 的话,最好还是借助第三方库,诸如 pygame

    最后,不要用自带的 IDLE!不要用自带的 IDLE!不要用自带的 IDLE!
    Arthur2e5
        2
    Arthur2e5  
       2016-09-27 11:15:24 +08:00   ❤️ 1
    楼上的技术建议都差不多了。

    > 在 cmd 和 IDLE 下运行,显示的 logo 不一致

    (想不通, txt 里面都是中规中矩的字符啊。)

    * 项目里面 pyc 干掉。 GitHub 网页新建一个 .gitignore 的话里面有 Python 专用的模板的。
    * 既然楼上提到了变量拼写,那么我也说一句 language 只见 lang 没见过 lan 的。
    * 不要用 docstring 当未来代码的注释…………

    > @264768502 输出的时候(比如 print)先 encode …… GBK

    py2 的 unicode 类型和 py3 那个讲人话的 str 在 print 的时候都会自动转化的吧?手动指名只会在其他语言的 Windows 以及非 Windows 平台下砸自己的脚。
    Er0s
        3
    Er0s  
    OP
       2016-09-27 13:00:28 +08:00
    @Arthur2e5
    @264768502
    谢谢两位 V 友这么热心的帮助我,十分感谢!
    cszhiyue
        4
    cszhiyue  
       2016-09-27 18:53:27 +08:00
    @Er0s 可以考虑增加语音转文字
    namco1992
        5
    namco1992  
       2016-09-27 20:01:27 +08:00
    所以,我可以顺便说下我写的基于百度语音 API 的语音识别和合成的 wrapper 么?
    https://github.com/namco1992/voicetools

    http://imgur.com/a/1jqq3
    namco1992
        6
    namco1992  
       2016-09-27 20:03:28 +08:00
    @namco1992
    图呢...

    GreatMartial
        7
    GreatMartial  
       2016-09-29 16:28:24 +08:00
    @namco1992 顶一个,最近正好需要,谢谢
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5560 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 28ms · UTC 06:04 · PVG 14:04 · LAX 22:04 · JFK 01:04
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.