Python 是否有可能将两个列表的输出以单独的值存储在一个列表中?
我有以下代码:Python 是否有可能将两个列表的输出以单独的值存储在一个列表中?,python,list,Python,List,我有以下代码: import os import glob directory = r'C:\Users\Max12\Desktop\xml\pdfminer\attachments' files = list(glob.glob(os.path.join(directory,'*.*'))) print(files) 然后我提取这些PDF的文本值: lines = [] for file in files: with pdfplumber.open(file) as pdf:
import os
import glob
directory = r'C:\Users\Max12\Desktop\xml\pdfminer\attachments'
files = list(glob.glob(os.path.join(directory,'*.*')))
print(files)
然后我提取这些PDF的文本值:
lines = []
for file in files:
with pdfplumber.open(file) as pdf:
for page in pdf.pages:
text = page.extract_text()
for line in text.split('\n'):
print(line)
我的输出是准确的,但不在具有两个值的列表中
如何将列表值的输出存储在一个列表中,以便对列表进行切片?您可以只执行
行。附加(行)
而不是打印
如果您需要每个页面的列表,可以执行以下操作:
files_data = []
for file in files:
with pdfplumber.open(file) as pdf:
lines = []
for page in pdf.pages:
text = page.extract_text()
for line in text.split('\n'):
lines.append(line)
files_data.append(lines)
您将为文件\u数据上的每个文件创建一个嵌套列表
您可以将行附加到行
列表中
lines = []
for file in files:
with pdfplumber.open(file) as pdf:
for page in pdf.pages:
text = page.extract_text()
for line in text.split('\n'):
lines.append(line)
您还可以在单行中压缩这些代码
for line in text.split('\n'):
lines.append(line)
压缩代码
lines=[ line for line in text.split('\n')]
您可以使用列表理解为每个文件创建一个列表,并将列表附加到行中
列表:
lines = []
for file in files:
with pdfplumber.open(file) as pdf:
lines.append([line for page in pdf.pages for line in page.extract_text().split('\n')])
是否希望声明的行中的所有值=[]
?我希望在列表的一项中有一个文件的总输出。然后是列表第二项中的第二个文件。这意味着您正在根据页码查找行,如第一页,第一行
,第二页,第二行
,n页,n行
。我说的对吗?谢谢Rex,但是我希望列表中的一个项目中有一个文件的总输出。现在,我在第一项打印中只有一行(第[0]行)。谢谢Joac,但是我希望在列表的一项中有一个文件的总输出。现在,我在第一项打印中只有一行(第[0]行)。