python播放一个文件,其名称是一个可能的字符串

时间:2017-08-22 01:57:35

标签: python

代码中似乎存在2个问题。 len和文件名“function”。

import winsound

z = 1

while z == z:

    print("What you want to say (q to quit):")
    say = input()

    if say != "q":

        b = 0

        while b < len(say):
            sound = say[b]
            winsound.PlaySound("r'C:\TALKER\sounds\"+sound+"+".wav", winsound.SND_FILENAME) # 1/4  /   0.25 sec
            b= b + 1
    else:
        SystemExit()   

1 个答案:

答案 0 :(得分:1)

winsound.PlaySound("r'C:\TALKER\sounds\"+sound+"+".wav",
winsound.SND_FILENAME) # 1/4  /   0.25 sec

该字符串格式错误。在开头附近有一个单引号,对反斜杠有混淆,而“r”是里面字符串,你当然不想要。

对目录使用 forward 斜杠要简单得多。他们工作得很好,并没有逃脱的棘手。试试这个:

winsound.PlaySound("C:/TALKER/sounds/" + sound + ".wav",
winsound.SND_FILENAME) # 1/4  /   0.25 sec