chain(*iterable)和chain.from_iterable(iterable)都是Python中itertools模块中的函数,用于将多个可迭代对象连接起来。
区别如下:
示例代码:
from itertools import chain
list1 = [1, 2, 3]
list2 = [4, 5, 6]
list3 = [7, 8, 9]
result = list(chain(list1, list2, list3))
print(result) # 输出:[1, 2, 3, 4, 5, 6, 7, 8, 9]
在上面的示例中,chain函数将list1、list2和list3连接起来,返回一个包含所有元素的新列表。
示例代码:
from itertools import chain
list1 = [1, 2, 3]
list2 = [4, 5, 6]
list3 = [7, 8, 9]
result = list(chain.from_iterable([list1, list2, list3]))
print(result) # 输出:[1, 2, 3, 4, 5, 6, 7, 8, 9]
在上面的示例中,chain.from_iterable函数将list1、list2和list3中的元素依次连接起来,返回一个包含所有元素的新列表。
总结:
chain(iterable)和chain.from_iterable(iterable)都可以将多个可迭代对象连接起来,但是它们的参数形式不同。chain(iterable)接受多个可迭代对象作为参数,而chain.from_iterable(iterable)接受一个可迭代对象,该可迭代对象中的每个元素也是可迭代对象。
领取专属 10元无门槛券
手把手带您无忧上云