我正在尝试创建列表列表。 我有以下清单。
['0.2', '0.1', '0.4', '0.9', '1.0', '1.1', '1.2']
['2.7', '3.2', '2.9', '3.8', '2.9', '2.9', '2.9']
['6.7', '6.4', '4.7', '4.5', '4.7', '5.1', '5.1']
['0.3', '0.4', '0.7', '1.7', '1.8', '2.0', '2.0']
['5.0', '5.1', '5.7', '5.7', '5.6', '5.4', '5.3']
上面的每一行我都存储在名为values的列表对象中。 但是,当我尝试运行时:
for ele in doc.items():
y0 = ele.attr('y0')
p = pdf.pq('LTTextLineHorizontal')
x = 0
values.clear()
for elem in p.items():
if elem.attr("y0") == y0:
x = x + 1
if x > 1:
values.append(elem.text())
print(values)
table.append(values)
for value in table:
print(value)
当我运行最后两行代码时,我得到以下内容:
['5.0', '5.1', '5.7', '5.7', '5.6', '5.4', '5.3']
['5.0', '5.1', '5.7', '5.7', '5.6', '5.4', '5.3']
['5.0', '5.1', '5.7', '5.7', '5.6', '5.4', '5.3']
['5.0', '5.1', '5.7', '5.7', '5.6', '5.4', '5.3']
['5.0', '5.1', '5.7', '5.7', '5.6', '5.4', '5.3']
为什么输出与我发布的顶部顶部的值列表不相同?
任何帮助将不胜感激 感谢。
答案 0 :(得分:3)
table.append(values)
会附加values
地址的引用/指针,因此values
列表对象的新更改将反映在table
的所有元素中。
您可以执行table.append(values[:])
之类的操作来添加values
对象的副本。