Python中 * 的用法的理解

本文详细解析了Python中*args的作用,即如何使用它来接收任意数量的位置参数,以及如何通过*解包将列表或元组等可迭代对象的元素作为单独参数传递。同时,通过实例展示了如何在函数调用中使用*解包,以及在`zip`函数中利用*解包和`set`数据结构来找到字符串列表的最长公共前缀。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、在函数中使用*表示可以传入任意多个参数,并将其放在一个元组中,如 *parameter

 

2、在列表、元组、集合、字典或者其他可迭代对象前加 * 作为参数传入时,*[1,2,3]解释器将自动进行解包,然后传递给多个单变量参数

实例:

其中*strs 将列表中的元素分解,

可以试试strs和*strs分别出来的效果

参数:strs = ["aa", "ab"]

zip(*strs)  --->  [ ('a', 'a'), ('a', 'b')] 

zip(strs)   --->   [('aa'), ('ab')]

class Solution:
    def longestCommonPrefix(self, strs) -> str:

        res = ""
        if len(strs) == 0:
            return ""
        for each in zip(*strs):
            if len(set(each)) == 1:
                res += each[0]
            else:
                return res
        return res



solution = Solution()
print(solution.longestCommonPrefix(["aa","ab"]))
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值