2017-06-18 168 views
1

我已经做了大量的搜索,但无法找到答案。 我是一个Python noob。 我遇到麻烦下面的代码才能正常工作:通过python脚本输入终端命令

import os 
f = open('/home/pi/BGM/sound_config.cfg', 'r') 
sound_config = f.read() 
f.close() 
internet_music = "wget -O - `wget -O - " + sound_config + "' | mpg123 -" 
os.system(internet_music) 
print "[Internet] Background music playing: " + sound_config 

我收到以下错误:

sh: 1: Syntax error: EOF in backquote substitution 

我相信这是由于我试图启动命令“文字(见下表)

wget -O - `wget -O - http://rainwave.cc/tune_in/4.mp3.m3u` | mpg123 - 

我知道这可能是一个简单的办法,但它已经让我过去一小时左右,寻遍。

此代码是我制作的一个脚本的一部分,用于在后台播放音乐(通过互联网进行流媒体播放),当其他应用程序启动时,后续代码将会停止播放。

如果有人能帮助我,我将非常感激。 谢谢!

+0

什么应该是你的第二反引号实际上是一个单引号。 –

+0

Python脚本中存在拼写错误('''需要更改为'\''),但命令本身看起来不正确。当我下载'http:// rainwave.cc/tune_in/4.mp3.m3u'时,我得到了多个与'#'样式注释混合的URL,它们不会作为'wget'的参数。你想做什么? – tom

回答

1

你缺少一个`这里:

sound_config + "' 

最后一个字符看上去像`代替。

+0

非常感谢!我知道这是愚蠢的! –

+0

我们都在那里,看看字符串[格式](https://stackoverflow.com/q/5082452/1233686),以便于阅读。 – hurturk