2012-06-22 200 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)) 
相關問題