繁体   English   中英

Python pygame“需要整数”

[英]Python pygame “an integer is required”

我有一个使用gTTS,pygame和os模块的功能:

from gtts import gTTS
import pygame as pg
from os import remove as OSremove

music = pg.mixer.music

def speak(x):
     sound = gTTS(text=x, lang="pl")
     sound.save("temp.mp3")
     pg.mixer.init()
     music.load("temp.mp3")
     music.play("temp.mp3")
     pg.quit()
     OSremove("temp.mp3")

而且我收到一个错误:TypeError:必须为整数(类型为str)。 图片在这里,因为我有5个代表

好的,上面的答案就目前而言是正确的,但是让我们更深入地了解它,因为您显然是新手。

首先,当您收到错误消息时, 请阅读它 在这种情况下,它告诉您它需要一个整数,并且您要给它一个字符串。 因此,很明显,您误解了一些东西。

接下来,看看文档。 Google pygame.mixer.music.play ,它将立即弹出。

https://www.pygame.org/docs/ref/music.html#pygame.mixer.music.play

接下来,查看文档。 在这种情况下,它说: 这个

play需要两个参数, loopsstart ,它们都默认为0。没有字符串-因此您给它指定了错误的参数。

进一步查看Google搜索结果,您会看到一个SO问题: 如何使用pygame播放mp3

这将导致您在另一个SO答案中找到一些示例代码。

您无需将音乐文件的名称传递给play功能。 只需调用不带参数的play()即可。

请参阅play功能的文档:

http://www.pygame.org/docs/ref/music.html#pygame.mixer.music.play

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM