合并 Python 中不同网址的列表

Merging lists from different urls in Python

我想获取事件列表作为 y 轴上的值,但有些事情我无法弄清楚。这是我目前的代码。

eventurl = "http://data.hisparc.nl/show/source/eventtime/501/2017/1/"
for dag in range(1, 32):
    print(eventurl + str(dag))

    data = urllib.request.urlopen(eventurl + str(dag))
    data = data.read().decode()

    events = data.split("# bin\tvalue")
    nevents = [d.split("\t")[1] for d in events[1].strip().split("\n")]
    events_per_hour = list(map(int, nevents))
    print(events_per_hour)

当我运行这段代码时,这是(部分)结果:

http://data.hisparc.nl/show/source/eventtime/501/2017/1/3
[2262, 2299, 2227, 2310, 2240, 2295, 2271, 2316, 2235, 2260, 2269, 2272, 2263, 2302, 2270, 2296, 2353, 2353, 2357, 2298, 2193, 2297, 2393, 2354] 
http://data.hisparc.nl/show/source/eventtime/501/2017/1/4
[2377, 2336, 2343, 2397, 2383, 2337, 2435, 2394, 2468, 2346, 2396, 2398, 2412, 2383, 2418, 2282, 2411, 2441, 2337, 2316, 2361, 2353, 2254, 2230]

我想合并列表(如果这些是列表),这样我就只有一个包含所有值的大列表(如果这就是所谓的列表),所以我可以将它们全部用作 y- 的值我图表的轴。(像这样:

[2262, 2299, 2227, 2310, 2240, 2295, 2271, 2316, 2235, 2260, 2269, 2272, 2263, 2302, 2270, 2296, 2353, 2353, 2357, 2298, 2193, 2297, 2393, 2354, 2377, 2336, 2343, 2397, 2383, 2337, 2435, 2394, 2468, 2346, 2396, 2398, 2412, 2383, 2418, 2282, 2411, 2441, 2337, 2316, 2361, 2353, 2254, 2230]

)

如何轻松合并这些列表?

声明一个包含所有号码的列表:

data = []

在循环内,调用 list.extend,一次调用将 events_per_hour 的每个元素添加到 data

for dag in range(1, 32):
    ... 
    data.extend(events_per_hour)

最后,data 将您的所有号码保存为一个列表。


演示

In [1]: data = []

In [2]: for i in range(3):
   ...:     data.extend([1, 2, 3])
   ...:     

In [3]: data
Out[3]: [1, 2, 3, 1, 2, 3, 1, 2, 3]