繁体   English   中英

在 python 中将字节串与 islice 一起添加

[英]Adding bytestrings with islice together in python

我正在基于 more-itertools split_into() 创建一个特定于域的 function,它在最后一个 yield 语句中失败

from itertools import islice
def split_into(iterable_seq, sizes):
    """
    sizes = [5]+ it.repeat(32)
    iterable_seq = b'ACAACACACCAACCCAAACACAC'
    """
    iterate = iter(iterable_seq)
    for size in sizes:
        yield b'A'*(32-size)+islice(iterate, size)

有没有办法将 islice 的 output 添加到字节串中?

这是另一种不起作用的方法:

yield b'A'*(32-size)+ b''.join(islice(iterate, size))

b'ACA' 格式的字节串和 islice 想要输出的可迭代数字之间有什么区别,例如 [65, 67, 65]? 似乎不需要将数字形式强制回其原始字符串形式。

bytes function 似乎是您要查找的内容:

yield b'A'*(32-size)+bytes(islice(iterate, size))

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM