Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/304.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
解析一个文本文件,打印每一行,并将其输入Mac';说';使用Python的命令_Python_Macos_Text To Speech - Fatal编程技术网

解析一个文本文件,打印每一行,并将其输入Mac';说';使用Python的命令

解析一个文本文件,打印每一行,并将其输入Mac';说';使用Python的命令,python,macos,text-to-speech,Python,Macos,Text To Speech,根据对的回答,我想解析一个文本文件,逐行打印,然后使用Python脚本将其发送到Mac的say命令 这似乎很容易做到,只需对链接问题的答案中给出的脚本稍作修改。作为参考,我对bash脚本非常熟悉。您可以使用子流程尝试类似的方法: import subprocess inputFile = input() for line in open(inputFile): print(line) subprocess.call(["say",line]) 也许是这样: import os

根据对的回答,我想解析一个文本文件,逐行打印,然后使用Python脚本将其发送到Mac的
say
命令


这似乎很容易做到,只需对链接问题的答案中给出的脚本稍作修改。作为参考,我对bash脚本非常熟悉。

您可以使用
子流程尝试类似的方法:

import subprocess
inputFile = input()
for line in open(inputFile):
    print(line)
    subprocess.call(["say",line])
也许是这样:

import os

f = open('say.txt')
for line in f.readlines():
    print line
    # just call system program
    os.system('say "{line}"'.format(line=line))

f.close()

不应该太难。您可能需要
子流程
模块。您有什么特别的问题吗?这将等待用户的输入-但是谢谢@Redorent编辑了这篇文章,因此它接受用户对文件的输入(
input()
),并且它现在使用
子流程而不是
os.system
。这马上就可以工作了,谢谢。我会再测试一下,然后再报告。