python的*表达式在元组中的妙用

选自 《python cookbook》

利用*表达式分解可迭代对象,无需复杂操作即可得到相关元素。

# 以下是*表达式在一个变长的元组序列中拆分出tag后的相关元素
#!/usr/bin/python3
# -*- coding: utf-8 -*-
# @Time    : 2024/7/14 下午8:33
# @Author  : s
records = [
    ('foo', 1, 2),
    ('bar', 'hello'),
    ('foo', 3, 4)
]


def do_foo(x, y):
    print('foo', x, y)


def do_bar(s):
    print('bar', s)


for tag, *args in records:
    if tag == 'foo':
        do_foo(*args)
    if tag == 'bar':
        do_bar(*args)
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容