python - 写入 'non-readable' 列表

标签 python

我试图使列表仅在标志为True时才可读。如果该标志为False,则该列表将显示为空。我想知道这是否是正确的方法?

def values(self):
    for v in self.items:
        if self.flag:
            yield v
        else:
            yield None

我认为这是不对的,因为如果标志为 False,光标不会继续沿着 self.items 前进直到到达末尾?我希望当标志为 False 时光标“卡住”,以便下次翻转时,可以返回标志上次为 True 时返回的元素后面的元素。

注意:self.items 是一个从大量文件生成的生成器。

谢谢

最佳答案

有多种方法可以实现您的要求。这是一个:

def values(self):
    for v in self.items:
        while not self.flag:
            yield None
        yield v

关于python - 写入 'non-readable' 列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29183724/

相关文章:

python - 使用 Pandas-Bokeh 绘制数据框时如何合并子图选项?

python - zip 函数给出不正确的输出

python - 使用 pydicom 添加新的 DICOM 标签

Python非对称加密: Using pre-generated prv/pub keys

python - 正则表达式从字符串中提取用户名/名称

python - Pandas Dataframe 使用正则表达式检查值是否存在

python - ImportError : libcublas. so.8.0: 无法打开共享对象文件: 没有这样的文件或目录 (Shared Linux)

python - GAE 是在扼杀我吗?

python - openpyxl KeyError 工作表 {0} 不存在

python - 可以使用 Altair 将 mark_rule 扩展到图表之外吗?