【问题标题】:extending list after for loop append failsfor循环追加后扩展列表失败
【发布时间】:2021-10-28 03:41:47
【问题描述】:

我正在从 pdf 中提取数据到列表中

list1=[]
for page in pages:
    for lobj in element:
        if isinstance(lobj, LTTextBox):
            x, y, text = lobj.bbox[0], lobj.bbox[3], lobj.get_text()
            
        if isinstance(lobj, LTTextContainer):
            for text_line in lobj:
                for character in text_line:
                    if isinstance(character, LTChar):
                        Font_size = character.size
            list1.append([Font_size,(lobj.get_text())]) 

        if isinstance(lobj, LTTextContainer):
            for text_line in lobj:
                for character in text_line:
                    if isinstance(character, LTChar):
                        font_name = character.fontname
            list1.append(font_name)
            
print(list1)

给我一​​个列表列表,其中 font_name 不在每个列表中,包含大小和文本。

list = [[12.0, 'aaa'], 'IJEAMP+Times-Bold', [12.0, 'bbb'], 'IJEAOO+Times-Roman', [12.0, 'ccc'], 'IJEAMP+Times-Bold', [10.0, 'ddd'], 'IJEAOO+Times-Roman',  [10.0, 'eee'], 'IJEAOO+Times-Roman', [8.0, '2\n'], 'IJEAOO+Times-Roman', 'IJEAOO+Times-Roman']

列表列表的外观

list = [[12.0, 'aaa', 'IJEAMP+Times-Bold'], [12.0, 'bbb', 'IJEAOO+Times-Roman'], [12.0, 'ccc', 'IJEAMP+Times-Bold'], [10.0, 'ddd', 'IJEAOO+Times-Roman'],  [10.0, 'eee', 'IJEAOO+Times-Roman'], [8.0, '2\n', 'IJEAOO+Times-Roman'], 'IJEAOO+Times-Roman']

如果可能,我想请教我的问题的答案,以修复我在代码中的错误。我相信这是可能的,这样我就不需要创建两个列表,然后zip它们。

我试过 list2.extend([list1, font_name]) 但这并没有做到这一点,因为 font_name 不断拆分成单个字母

【问题讨论】:

    标签: python-3.x list for-loop append list-comprehension


    【解决方案1】:

    您正在附加到外部列表,而不是您刚刚添加到其中的列表。 这会添加您的内部列表:

    list1.append([Font_size,(lobj.get_text())]) 
    

    如果您想扩展添加的列表,可以使用

    list1[-1].append(font_name)
    

    而不是

     list1.append(font_name)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-11-16
      • 2018-03-10
      • 2018-10-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多