我想将两个列表放入一个列表但不使用append。它会混合两个列表。我想将这两个列表作为新列表中的两个元素。新列表只有两个元素 - 第一个列表和第二个列表。
答案 0 :(得分:2)
这是一种方法:
let list2 a b = [ a; b ]
这适用于同一类型的任何两个值a
,b
。它们可以是列表或其他任何内容:
$ ocaml
OCaml version 4.01.0
# let list2 a b = [a; b];;
val list2 : 'a -> 'a -> 'a list = <fun>
# list2 [1;2] [3;4];;
- : int list list = [[1; 2]; [3; 4]]
# list2 "yes" "no";;
- : string list = ["yes"; "no"]
#
(如果您的两个列表不是同一类型,则无法将它们放入列表中.OCaml列表是同类的 - 所有元素都具有相同的类型。)
答案 1 :(得分:0)
您可以使用功能执行此操作:
直接使用 append() 将无法获得所需的结果。请参阅包含多个列表的列表的代码段。
def foo(list1,list2):
new_list =[]
for i in range(0,len(list1)):
new_list.append(list1[i])
for j in range(0,len(list2)):
new_list.append(list2[j])
return new_list