【发布时间】:2019-07-05 05:14:38
【问题描述】:
我正在尝试创建一个新的创建列表,其中通过 for 循环的每次迭代将新项目附加到列表中。到目前为止的代码如下所示:
path_start = 'https://promo.betfair.com/betfairsp/prices/dwbfpricesukwin'
file = ".csv"
start = datetime.datetime.strptime("10-02-2007", "%d-%m-%Y")
end = datetime.datetime.strptime("21-02-2019", "%d-%m-%Y")
date_generated = [start + datetime.timedelta(days=x) for x in range(0, (end-start).days)]
date_list = []
for date in date_generated:
date_string = date.strftime("%d%m%Y")
for path_name in date_string:
x = path_start + date_string + file
date_list.append(x)
print(date_list)
当我这样做时,会创建一个列表,但列表中的每个项目都是相同的。我希望每个项目都使用在前一个 for 循环中创建的 date_string 变量,该变量应在每次迭代中更改。这是它创建的列表的示例:
['https://promo.betfair.com/betfairsp/prices/dwbfpricesukwin10022007.csv', 'https://promo.betfair.com/betfairsp/prices/dwbfpricesukwin10022007.csv'
我尝试过更改循环的缩进,但这并没有解决问题。
我也尝试使用 numpy 数组来提高效率,但这个问题的答案 (How to declare and add items to an array in Python?) 说要使用列表。由于列表特别长,因此也将不胜感激任何有助于提高效率的帮助。
干杯, 桑迪
【问题讨论】:
-
path_start, date_string, file不要在for path_name in date_string:内部更改。 -
是否有
numpy标签是因为您更喜欢/考虑 NumPy 解决方案? -
你需要内循环做什么?
-
是的,我认为这可能会提高效率,但我不确定如何将新项目添加到 numpy 数组中
-
@Austin 干杯!我已经取出第二个循环并且它现在可以工作了。想多了啊!
标签: python list numpy for-loop