python-3.x - Python3.x:压缩两个列表
问题描述
我正在尝试使用以下代码压缩两个列表。
x= array([ 56, 84, 112, 140, 168, 196, 224, 252, 280, 308, 336,
364, 392, 420, 448, 476, 504, 532, 560, 588, 616, 644,
672, 700, 728, 756, 784, 812, 840, 868, 896, 924, 952,
980, 1008, 1036, 1064, 1092, 1120, 1148, 1176, 1204, 1232, 1260,
1288, 1316])
y= array([0.96780319, 0.97895697, 0.97842111, 0.97283027, 0.97018866,
0.96909372, 0.96666816, 0.96606516, 0.96241692, 0.96401202,
0.96687579, 0.9639144 , 0.96337408, 0.95347031, 0.94973264,
0.94029729, 0.93110676, 0.91811095, 0.90408523, 0.89094813,
0.86007405, 0.82883029, 0.81545714, 0.80478483, 0.78737364,
0.75932569, 0.63460651, 0.47195082, 0.47093429, 0.55858831,
0.88054987, 0.96316967, 0.93770625, 0.82751165, 0.76109564,
0.73998599, 0.77669407, 0.785424 , 0.76852611, 0.78837932,
0.79866485, 0.8308753 , 0.89322146, 0.92456099, 0.9673221 ,
0.96211249])
zipped_list=[]
row = np.array([list for i in zip(x, y)])
for a, b in row:
zipped_list.append((a,b))
我收到以下错误消息。
Traceback (most recent call last):
File "<ipython-input-106-2294469b69dd>", line 4, in <module>
for a, b in row:
TypeError: 'type' object is not iterable
期望的结果是逐个元素地减少 x 和 y
[(56,0.96780319), (84,0.97895697), (112,0.97842111)....(1316,0.96211249)]
关于代码为何遇到此错误以及如何修复它的任何建议?
谢谢。
编辑:我意识到我在列表之后错过了(i)。而不是row = np.array([list for i in zip(x, y)])
,
row = np.array([list (i) for i in zip(x, y)])
我错过了(i)列表之后。现在有了更正的版本(后者)。代码运行良好。感谢您的回复。
解决方案
似乎这就是你想要得到的:
import numpy as np
x= np.array([ 56, 84, 112, 140, 168, 196, 224, 252, 280, 308, 336,
364, 392, 420, 448, 476, 504, 532, 560, 588, 616, 644,
672, 700, 728, 756, 784, 812, 840, 868, 896, 924, 952,
980, 1008, 1036, 1064, 1092, 1120, 1148, 1176, 1204, 1232, 1260,
1288, 1316])
y= np.array([0.96780319, 0.97895697, 0.97842111, 0.97283027, 0.97018866,
0.96909372, 0.96666816, 0.96606516, 0.96241692, 0.96401202,
0.96687579, 0.9639144 , 0.96337408, 0.95347031, 0.94973264,
0.94029729, 0.93110676, 0.91811095, 0.90408523, 0.89094813,
0.86007405, 0.82883029, 0.81545714, 0.80478483, 0.78737364,
0.75932569, 0.63460651, 0.47195082, 0.47093429, 0.55858831,
0.88054987, 0.96316967, 0.93770625, 0.82751165, 0.76109564,
0.73998599, 0.77669407, 0.785424 , 0.76852611, 0.78837932,
0.79866485, 0.8308753 , 0.89322146, 0.92456099, 0.9673221 ,
0.96211249])
zipped_list = [i for i in zip(x, y)]
print(zipped_list)
推荐阅读
- jsf - 如何在命令按钮单击时隐藏 p:面板
- ruby - 在 Windows 上的本地 bash ubuntu 上运行我的应用程序 ruby
- c - OpenMP 并行 for 循环中可能的竞争条件
- ionic-framework - ionic 4 firebase auth phone验证码验证另一个页面
- php - 如何在php中的函数内部进行加法操作?
- django - 将 SECRET_KEY 设置为环境变量
- vb.net - Visual Basic button.click 如何返回 If
- c# - Entity Framework Core 3.0 表自身关系
- python - pip install chatterbot 在 Windows 上失败
- python - Pysoundfile 库未导入