相关疑难解决方法(0)

转置/解压缩功能(zip的反转)?

我有一个2项元组的列表,我想将它们转换为2个列表,其中第一个包含每个元组中的第一个项目,第二个列表包含第二个项目.

例如:

original = [('a', 1), ('b', 2), ('c', 3), ('d', 4)]
# and I want to become...
result = (['a', 'b', 'c', 'd'], [1, 2, 3, 4])
Run Code Online (Sandbox Code Playgroud)

是否有内置函数可以做到这一点?

python transpose list matrix

480
推荐指数
6
解决办法
15万
查看次数

将列表/元组对打包成两个列表/元组

可能重复:
Python中的转置/解压缩功能

我有一个如下所示的列表:

list = (('1','a'),('2','b'),('3','c'),('4','d'))
Run Code Online (Sandbox Code Playgroud)

我想将列表分成2个列表.

list1 = ('1','2','3','4')
list2 = ('a','b','c','d')
Run Code Online (Sandbox Code Playgroud)

我可以这样做:

list1 = []
list2 = []
for i in list:
   list1.append(i[0])
   list2.append(i[1])
Run Code Online (Sandbox Code Playgroud)

但我想知道是否有更优雅的解决方案.

python tuples list

152
推荐指数
2
解决办法
11万
查看次数

在Julia中正确地(un)压缩数组的方法

我正在使用Julia中的PyPlot库进行绘图,并且散布函数似乎有一点"不便",即只接受坐标作为两个参数:一个数组用于所有x值,另一个用于所有y值,即

scatter(xxs,yys)
Run Code Online (Sandbox Code Playgroud)

x=[x1,x2,...],和y=[y1,y2,...].

如果我有一个具有坐标点的集合或元组,例如,

A=([x1,y1],[x2,y2],...)
Run Code Online (Sandbox Code Playgroud)

直接在Python中使用pyplot/matplotlib解决了一个内核中的不便,正如StackOverflow中所述:

plt.scatter(*zip(*li))
Run Code Online (Sandbox Code Playgroud)

但似乎Julia上的拉链完全不同.到目前为止,我已经提出了以下解决方案,但它似乎相当不优雅:

x=[]
y=[]
for j in selectos
  append!(x,j[2])
   append!(y,j[1])
end

scatter(x,y, marker="o",c="black")
Run Code Online (Sandbox Code Playgroud)

是否有更"功能"或单线(或双线)方法?

list scatter julia

5
推荐指数
1
解决办法
515
查看次数

标签 统计

list ×3

python ×2

julia ×1

matrix ×1

scatter ×1

transpose ×1

tuples ×1