2012-06-22 114 views
1

嗨我不断收到语法错误,但我无法弄清楚为什么。我的代码是语法错误无法弄清楚为什么

data = numpy.loadtxt((etf + '.csv',dtype = ([("date", "S8"), ("value", "f8")]), delimiter= ',' , usecols=(0,-1))) 
x = numpy.arange(len(data)) 
pl1.bar(x,data["value"], width = 0.8) 
p1.xticks(x+.4, data["date"]) 
p1.show() 

和语法错误是

data = numpy.loadtxt((etf + '.csv',dtype = ([("date", "S8"), ("value", "f8")]), delimiter= ',' , usecols=(0,-1))) 
             ^

感谢

+8

我看到括号不匹配。 –

回答

3
data = numpy.loadtxt((etf + '.csv', 

的前一个额外的括号一旦你到在这里,Python认为你正在构建一个元组作为loadtxt的一个参数,而不是发送多个参数。因此,

dtype = ([("date", "S8"), ("value", "f8")]) 

错误,因为=在元组中无效。你可能打算这样做:

data = numpy.loadtxt((etf + '.csv'), ...) 

但这里并不需要围绕etf + '.csv'额外的括号 - 字符串连接的优先级,所以你可以只取出第二(,一切都将正常工作。

0

你有ETF

data = numpy.loadtxt(etf + '.csv',dtype = ([("date", "S8"), ("value", "f8")]), delimiter= ',' , usecols=(0,-1)) 
相关问题