如果这是一个蹩脚的问题,我真的很抱歉,但我认为这可能会帮助其他人从 C 到 Python 进行同样的过渡。我有一个程序,我开始用 C 编写,但我认为最好用 Python 编写,因为它让我的生活更轻松。
我的程序从 Yahoo! 检索盘中股票数据!财务并将其存储在结构中。由于我已经习惯了 CI 编程,因此通常会尝试以艰难的方式做事。我想知道将数据存储为有组织的方式的最“Pythonesque”方式是什么。我在想一组元组?
这是我的一些 C 程序。
// Parses intraday stock quote data from a Yahoo! Finance .csv file.
void parse_intraday_data(struct intraday_data *d, char *path)
{
char cur_line[100];
char *csv_value;
int i;
FILE *data_file = fopen(path, "r");
if (data_file == NULL)
{
perror("Error opening file.");
return;
}
// Ignore the first 15 lines.
for (i = 0; i < 15; i++)
fgets(cur_line, 100, data_file);
i = 0;
while (fgets(cur_line, 100, data_file) != NULL) {
csv_value = strtok(cur_line, ",");
csv_value = strtok(NULL, ",");
d->close[i] = atof(csv_value);
csv_value = strtok(NULL, ",");
d->high[i] = atof(csv_value);
csv_value = strtok(NULL, ",");
d->low[i] = atof(csv_value);
csv_value = strtok(NULL, ",");
d->open[i] = atof(csv_value);
csv_value = strtok(NULL, "\n");
d->volume[i] = atoi(csv_value);
i++;
}
d->close[i] = 0;
d->high[i] = 0;
d->low[i] = 0;
d->open[i] = 0;
d->volume[i] = 0;
d->count = i - 1;
i = 0;
fclose(data_file);
}
到目前为止,我的 Python 程序像这样检索数据。
response = urllib2.urlopen('https://www.google.com/finance/getprices?i=' + interval + '&p=' + period + 'd&f=d,o,h,l,c,v&df=cpct&q=' + ticker)
问题是,在 Python 中存储这些数据的最佳或最优雅的方式是什么?