我希望在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]
我想合并列表(如果这些是列表),这样我就只有一个大的列表(如果这就是所谓的那些' s)所有的值,所以我可以全部使用它们作为我的图表的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]
)
如何轻松合并这些列表?
答案 0 :(得分:0)
声明一个列表以保存所有数字:
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]