合并 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]
我想获取事件列表作为 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]