gpt4 book ai didi

python - 迭代一个元组

转载 作者:行者123 更新时间:2023-11-28 22:41:21 27 4
gpt4 key购买 nike

我正在尝试在 python 中编写一个函数,该函数将采用可变数量的元素,其中 2 个不同的元素将分隔两个元组中的参数。例如,我想调用这样的电话:

foo('D1', d1n1, d1n2, ... , 'D2', d2n1, d2n2, ...)

其中 d1n1 等属于同一类型,我想在元组中获取“D1”和“D2”之间的元素,并在另一个元组中获取“D2”之后的元素。但我对如何去做有点不知所措。任何帮助将不胜感激:)。

最佳答案

它可以通过使用 *args 接受无限数量的参数来实现。 ,然后按第二个不同元素的索引拆分 args。

例如:

def foo(*args):
ind = args.index('D2')
lst1 = args[:ind]
lst2 = args[ind:]
print lst1
print lst2


foo('D1', 1, 2, 3, 4, 5, 'D2', 6, 7, 8, 9)

输出

('D1', 1, 2, 3, 4, 5)
('D2', 6, 7, 8, 9)

实现它的另一种方法是要求用户在调用函数时分别分隔参数(使用命名参数):

def foo(lst1, lst2):
print lst1
print lst2


foo(lst1=['D1', 1, 2, 3, 4, 5], lst2=['D2', 6, 7, 8, 9])

关于python - 迭代一个元组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32686801/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com