0
点赞
收藏
分享

微信扫一扫

Runnable 和 Callable 的区别?什么是 Callable 和 Future?什么是 FutureTask?

小北的爹 03-16 22:00 阅读 2

1.zip()同时迭代多个列表、字典等

使用zip()可以同时迭代多个可迭代对象,如列表、字典。
注意:当若干个可迭代对象的长度不相等时,zip()函数会停止在最短的可迭代对象。
例子:

# 定义可迭代对象
numbers = [1, 2, 3]
letters = ['a', 'b', 'c']# 使用zip()函数将两个可迭代对象打包,并在循环中同时迭代
for number, letter in zip(numbers, letters):
    print(f"Number: {number}, Letter: {letter}")
# 迭代字典
        for(triplets, labels), (triplets_h, labels_h) in zip(train_iter, train_iter_h):
            if self.p.gpu >= 0:
                triplets, labels = triplets.to("cuda"), labels.to("cuda")
                triplets_h, labels_h = triplets_h.to("cuda"), labels_h.to("cuda")
            subj, rel = triplets[:, 0], triplets[:, 1]

            obj, rel = triplets_h[:, 0], triplets_h[:, 1]

2.打包可迭代对象

# 定义可迭代对象
numbers = [1, 2, 3]
letters = ['a', 'b', 'c']# 使用zip()函数将两个可迭代对象打包
zipped = zip(numbers, letters)# 将zipped转换为列表并打印
zipped_list = list(zipped)
print(zipped_list)  # 输出:[(1, 'a'), (2, 'b'), (3, 'c')]

3.*操作符解包

# 定义可迭代对象
numbers = [1, 2, 3]
letters = ['a', 'b', 'c']# 使用zip()函数将两个可迭代对象打包,并解包合并为多个列表
zipped = zip(numbers, letters)
merged_numbers, merged_letters = zip(*zipped)
​
print("Merged numbers:", merged_numbers)  # 输出:Merged numbers: (1, 2, 3)
print("Merged letters:", merged_letters)  # 输出:Merged letters: ('a', 'b', 'c')
举报

相关推荐

0 条评论