通过读取文本文件创建列表

所以,我试图自动完成一项繁琐的任务,我有这样一个test.txt,它总结了一些pdf文件的文件路径。

我有这个test.txt它总结了一些pdf文件的文件路径。

 "L:\Advertentie woningplattegronden\Definitieve plattegronden\Gemeente Delft\Complex 1004\Copy\1004A0Oa00 Jacob Gillishof 10.pdf"
"L:\Advertentie woningplattegronden\Definitieve plattegronden\Gemeente Delft\Complex 1004\Copy\1004A0Oa00 Jacob Gillishof 11.pdf"
"L:\Advertentie woningplattegronden\Definitieve plattegronden\Gemeente Delft\Complex 1004\Copy\1004A0Oa00 Jacob Gillishof 14.pdf"

我需要我的脚本做的步骤1是做一个列表的每一行,我做的。

with open('Test.txt') as f:
textlines = f.read().splitlines()
print(textlines)

其结果是:

[
    '"L:\\Advertentie woningplattegronden\\Definitieve plattegronden\\Gemeente Delft\\Complex 1004\\Copy\\1004A0Oa00 Jacob Gillishof 10.pdf"',
    '"L:\\Advertentie woningplattegronden\\Definitieve plattegronden\\Gemeente Delft\\Complex 1004\\Copy\\1004A0Oa00 Jacob Gillishof 11.pdf"',
    '"L:\\Advertentie woningplattegronden\\Definitieve plattegronden\\Gemeente Delft\\Complex 1004\\Copy\\1004A0Oa00 Jacob Gillishof 14.pdf"',
    "",
    "",
]

不知道为什么最后两个对象都是空字符串。

然后,我想创建另一个列表,通过文本行列表循环,并分离路径中的所有内容。

所以,我想要一个包含的列表。

some_list = [
    "L:",
    "Advertentie woningplattegronden",
    "Definitieve plattegronden",
    "Gemeente Delft",
    "Complex 1004",
    "Copy",
    "1004A0Oa00 Jacob Gillishof 10.pdf",
]

最终我希望能够把some_list中的一些索引放到一个新的变量中 这样我就可以在以后创建一个包含这些变量的文件(csv)。

每次我试图循环浏览第一个列表时,我都会得到一个错误信息,告诉我字符串索引超出了范围。

我并不是要求一个完整的脚本,但如果能得到一些关于如何继续使用这个脚本的指导就更好了。

先谢谢你

解决方案:

也许是这样的?我在这里和那里加了一些有用的评论。

filenames = []

with open("file.txt", "r") as file:
    for line in file:
        line = line.strip()  # remove any trailing/leading spaces
        line = line.strip('"')  # remove wrapping quotes
        if line:  # if there still is content...
            filenames.append(line)  # save the valid line.

filename_components = [
    filename.split("\\")  # Split the filename by backslashes
    for filename in filenames  # for each filename  # in the filenames we just stored
]

for split_name in filename_components:
    print(split_name)  # print out each split name

例如,输出

['L:', 'Advertentie woningplattegronden', 'Definitieve plattegronden', 'Gemeente Delft', 'Complex 1004', 'Copy', '1004A0Oa00 Jacob Gillishof 10.pdf']
['L:', 'Advertentie woningplattegronden', 'Definitieve plattegronden', 'Gemeente Delft', 'Complex 1004', 'Copy', '1004A0Oa00 Jacob Gillishof 11.pdf']
['L:', 'Advertentie woningplattegronden', 'Definitieve plattegronden', 'Gemeente Delft', 'Complex 1004', 'Copy', '1004A0Oa00 Jacob Gillishof 14.pdf']

给TA打赏
共{{data.count}}人
人已打赏
未分类

当单选输入=选中时,改变边框[重复]。

2022-9-8 21:27:37

未分类

node.js中的两个http调用

2022-9-8 21:27:39

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索