标签: list-manipulation

Linq/.NET3.5是否支持'zip'方法?

在其他语言(ruby,python,...)我可以使用zip(list1, list2)这样的工作:

如果list1 is {1,2,3,4}list2 is {a,b,c}

然后zip(list1, list2)会回来:{(1,a), (2,b), (3,c), (d,null)}

这种方法在.NET的Linq扩展中是否可用?

.net linq list-manipulation

6
推荐指数
1
解决办法
1171
查看次数

在列表之间插入的最有效方法?

我正在读取一个文件并构建一个列表a2。我想在前两项之后插入 3 行以a2从列表中列出。b

b = ["This is a line", "another line", "and another one"]
a2 = ['a1', 'a2', 'a3']

i = 0
for x, y in map(None, a2[0:2], a2):
    i = i + 1
    if x == y:
        continue
    else:
        for newLine in b:
            a2.insert(i-1, newLine)
            i = i+1
print a2
Run Code Online (Sandbox Code Playgroud)

上面确实给了我预期的结果['a1', 'a2', 'This is a line', 'another line', 'and another one', 'a3'],但由于我要从巨大的文本文件中构建列表并在之间插入几行,我想我必须使其性能更加直观!

python list list-manipulation

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

转置嵌套列表

我有一个列表结构,它代表这样递给我的表

> l = list(list(1, 4), list(2, 5), list(3, 6))
> str(l)
List of 3
 $ :List of 2
  ..$ : num 1
  ..$ : num 4
 $ :List of 2
  ..$ : num 2
  ..$ : num 5
 $ :List of 2
  ..$ : num 3
  ..$ : num 6
Run Code Online (Sandbox Code Playgroud)

我想将其转换为

> lt = list(x = c(1, 2, 3), y = c(4, 5, 6))
> str(lt)
List of 2
 $ x: num [1:3] 1 2 3
 $ y: num …
Run Code Online (Sandbox Code Playgroud)

transpose r list list-manipulation

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

将整数列表与字符串列表相乘

假设有两个列表:

l1 = [2,2,3]
l2 = ['a','b','c']
Run Code Online (Sandbox Code Playgroud)

我想知道如何找到两者的乘积,使得输出为:

#output: ['a','a','b','b','c','c','c']
Run Code Online (Sandbox Code Playgroud)

如果我做:

l3 = []
for i in l2:
    for j in l1:
        l3.append(i)
Run Code Online (Sandbox Code Playgroud)

我得到:

['a', 'a', 'a', 'b', 'b', 'b', 'c', 'c', 'c']
Run Code Online (Sandbox Code Playgroud)

这是错误的,我想知道我在哪里犯了错误?

python for-loop list list-manipulation

5
推荐指数
2
解决办法
239
查看次数

4
推荐指数
1
解决办法
2505
查看次数

mathematica中的两个列表操作

我有两个列表操作,我想请求帮助.我实现它们的方式不是很优雅,所以我想向你们的专家学习.

1)假设我有两个列表,一个是喜欢{{0,2,4},{1,3,2},{2,0,4}}而另一个是{{1,3,7},{2,4,6},{3,1,9}}.我想要根据值,或者基于某些标准来过滤第一个列表,然后在第二个列表中获取相应的元素.例如,基于非零值,我想得到{{3,7},{2,4,6},{3,9}}.根据大于2的条件,我想得到{{7},{4},{9}}.

2)我有一个列表,如{{{1,2},{1,1}},{{1,3},{2,4}},{{1,2},{2,3}},{{1,4},{3,3}}}.我想形成{{{1,2},{{1,1},{2,3}}},{{1,3},{{2,4}}},{{1,4},{{3,3}}}.也就是说,如果第一个元素相同,我想将这些第二个列表分组.我怎么能以漂亮的方式做到这一点?

非常感谢.

wolfram-mathematica list-manipulation

4
推荐指数
1
解决办法
487
查看次数

对mathematica中其他部分的更改进行排序

我只是想知道:

给定一个列表{{{3,1,2},{4,2,5}},{{7,1},{2,4}}},我想对第一个组件进行排序,然后像第一个组件那样更改第二个组件.期望的结果是{{{1,2,3},{2,5,4}},{{1,7},{4,2}}}.

我怎样才能做到这一点?非常感谢您的帮助.

wolfram-mathematica list-manipulation

4
推荐指数
1
解决办法
131
查看次数

如何将Scheme列表分解为要传递给过程的args?

我想使用(max)带有list数字的预定义函数(R5RS),其长度不同.不幸的是,(max)接受这样的输入:

(max 2 43 5 6)
=> 43
Run Code Online (Sandbox Code Playgroud)

我试图像这样使用它:

(define lst '(3 5 53 4 53 54 32))
(max lst)
Run Code Online (Sandbox Code Playgroud)

这会产生以下错误.

max: expects argument of type <real number>; given (3 5 53 4 53 54 32)
Run Code Online (Sandbox Code Playgroud)

我如何将这个列表分解为我需要的各个参数,因为我将它们传递给了(max)

scheme max list-manipulation r5rs

4
推荐指数
1
解决办法
2585
查看次数

J:列表项之间的符号更改次数

物品a_11.

a =: 1 _1 _1 1 _1
Run Code Online (Sandbox Code Playgroud)

有3个符号变化a:

1, -1, -1, 1, -1
  ?       ?  ?
 here   and here
Run Code Online (Sandbox Code Playgroud)

我如何无限地计算它们?

arrays list j list-manipulation tacit-programming

4
推荐指数
1
解决办法
95
查看次数

c#列表操作

如果我有

List<String> text
Run Code Online (Sandbox Code Playgroud)

如何创建特定范围内所有连续元素的子列表,例如

List<String> subList = /* all elements within text bar the first 2*/
Run Code Online (Sandbox Code Playgroud)

还有其他有用的List操作提示和技巧可能有用吗?

c# list list-manipulation

3
推荐指数
2
解决办法
2521
查看次数