接受迭代器并返回字符串的函数

jiahuiding
def alternate(*args):
    l = ''
    c = 0
    while True:
        try:
            iterable = args[c]
            i = iter(iterable)
            l = l + next(i)
            c = c + 1
        except:
            break
    yield l

备用生成器采用任意数量的可迭代项作为参数:它从第一个参数生成第一个值,然后从第二个参数...生成第一个值,然后从最后一个参数生成第一个值;然后是来自第一个参数的第二个值,然后是来自第二个参数的第二个值,...,然后是来自最后一个参数的第二个值;等等。如果任何可迭代项不再产生任何值,则此生成器将不再产生任何值。例如:

for i in alternate('abcde','fg','hijk'):
    print(i,end='')

答案是:

afhbgic

当我的职能需要

('abcde','fg','hijk')

它返回

afh

但是正确的答案是

afhbgic

有人可以告诉我如何解决吗?非常感谢!

马辛

像这样的解决方案呢?

def alternate(*args):
    l = ''

    # initialize iterators for each argument
    iterators = [iter(it) for it in args]

    # iterate over lengths, using iterators
    while True:
        for it in iterators:
            try:
                l = l + next(it)
            except StopIteration:
                return l

    return l


result = alternate('abcde','fg','hijk')
print(result) # afhbgic

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

字符串迭代器和理解函数

来自分类Dev

如何创建一个接受字符和字符串并返回该字符在字符串中的索引的函数

来自分类Dev

创建一个接受字符串并根据字符串是否包含重复字符返回true或false的函数

来自分类Dev

Swift字符串数组迭代函数

来自分类Dev

接受可为空的类型并返回可为空的类型或字符串的函数

来自分类Dev

函数接受名称数组并返回带有编号名称的字符串

来自分类Dev

使用迭代器反转字符串

来自分类Dev

C ++:遍历字符串-迭代器?

来自分类Dev

用迭代器替换字符串

来自分类Dev

字符串迭代器不可递减

来自分类Dev

从函数返回字符串[字符指针]

来自分类Dev

从函数返回字符串[字符指针]

来自分类Dev

接受迭代器的函数文档

来自分类Dev

如何在字符串中搜索模式并返回迭代器?

来自分类Dev

如何将字符串迭代器传递给其他函数

来自分类Dev

如何将字符串迭代器变量传递给C ++中的函数?

来自分类Dev

如何将字符串迭代器传递给其他函数

来自分类Dev

字符串函数不会返回字符串

来自分类Dev

我如何制作一个将接受字符串并从字符串返回第二个字符的函数?

来自分类Dev

带有可迭代和函数的函数,返回一个字符串

来自分类Dev

字符串迭代

来自分类Dev

如何定义仅接受字符串的函数

来自分类Dev

将字符串传递给接受char指针的函数

来自分类Dev

在需要字符串字面量的函数中接受char。

来自分类Dev

C ++系统函数不接受字符串?

来自分类Dev

函数应返回字符串或数组

来自分类Dev

PostgreSQL 9.3:从函数返回字符串

来自分类Dev

constexpr函数返回字符串文字

来自分类Dev

返回字符串和函数

Related 相关文章

热门标签

归档