让我先从代码开始。请注意,代码中存在的所有变量都已明确定义。
call(['youtube-upload', '--title='song + " ~ ["+movie_name +"]", '--description="Hi there!\nDon\'t forget to enjoy :)"', '--category="Song"', '--default-language="en"', '--playlist "'+xx+'"', song2file(song)+'.mp4'], shell=False)
请帮助
答案 0 :(得分:3)
'--title ='和歌曲之间缺少'+'。
call(['youtube-upload', '--title='+ song + " ~ ["+movie_name +"]", '--description="Hi there!\nDon\'t forget to enjoy :)"', '--category="Song"', '--default-language="en"', '--playlist "'+xx+'"', song2file(song)+'.mp4'], shell=False)
答案 1 :(得分:2)
您在+
和'--title='
之间错过了song
。但是,您应该使用str.format
而不是字符串添加。使阅读更容易,更快,并降低丢失+
或不匹配引号的风险。
例如:
call(['youtube-upload',
'--title={song} ~ [{movie_name}]'.format(song=song, movie_name=movie_name),
'--description="Hi there!\nDon\'t forget to enjoy :)"',
'--category="Song"',
'--default-language="en"',
'--playlist "{xx}"'.format(xx=xx),
'{filename}.mp4'.format(filename=song2file(song))],
shell=False)
如果你有Python 3.6+,那么f
-strings将大大缩短这一点:
call(['youtube-upload',
f'--title={song} ~ [{movie_name}]',
'--description="Hi there!\nDon\'t forget to enjoy :)"',
'--category="Song"',
'--default-language="en"',
f'--playlist "{xx}"',
f'{song2file(song)}.mp4'],
shell=False)