如何在函数中使用Python中字符串的r(用于原始数据)



你好,堆栈溢出社区,

我在做一个机器人,它应该做一些事情,然后播放mp3。现在我需要写一个函数,因为我经常使用它。我需要给Python一个Path来查找mp3文件,并且必须正常使用Backsplash作为Path,但当我只给Path(带Backsplashs(时,Python会将其视为一个命令,比如(新行(或其他什么。必须有一个rprint(r'PATH')print('PATH', 'r'),并且我有问题将r放入函数中。我已经尝试了所有的可能性,我知道,但都没有奏效:

from pygame import mixer  

def musicplayer(r, pfad):
mixer.init()
mixer.music.load(pfad)
mixer.music.play()
musicplayer('r', 'D:Toolsmine.mp3')
Error: TypeError: function takes exactly 1 argument (2 given)
def musicplayer(pfad, r='r'):
mixer.init()
mixer.music.load(pfad, r)
mixer.music.play()
musicplayer('D:Toolsmine.mp3')
Error: TypeError: function takes exactly 1 argument (2 given)

谢谢你的帮助,并对我问的问题给予反馈

不能用变量表示语法元素。看起来你想要类似的东西

loop_thing = "for"
loop_thing item in my_list:
...

不能用这种方式修改字符串常量。只需使用

r'D:Toolsmine.mp3'

没有必要区分这些情况——或者你有没有向我们展示的应用程序?

最新更新