【发布时间】:2017-11-26 03:24:05
【问题描述】:
import csv
filename='songdata.csv'
reader=csv.reader(open(filename,'r'))
header=next(reader)
data=[]
for row in reader:
# row=[Song, Artist, Year, Tempo, Hotness, Duration, Key, Loudness, Mode]
Song=row[0]
Artist=row[1]
Year=int(row[2])
Tempo=float(row[3])
Hotness=float(row[4])
Duration=float(row[5])
Key=int(row[6])
Loudness=float(row[7])
Mode=int(row[8])
data.append([Song, Artist, Year, Tempo, Hotness, Duration, Key, Loudness, Mode])
for tempo in data:
p=[]
p.append(tempo[3])
print p
我的 CSV 文件包含歌曲、艺术家、年份、速度、热度、持续时间、键、响度、模式等列。我创建了一个空列表,并尝试将代表 Tempo 的所有浮点值附加到此列表中,但我一直得到一堆代表每个浮点的单独列表值。似乎没有实际附加到 p。我什至尝试使用我不久前制作的函数来展平结果,但它没有任何效果。有什么建议吗?
【问题讨论】:
-
for tempo in data: p=[] p.append(tempo[3])=>p = []必须在循环之外!