Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python—从文件中提取数据并插入数组包括'\n';。如何不包含它,以便我可以对文本排序并更改它?_Python_Arrays_List - Fatal编程技术网

Python—从文件中提取数据并插入数组包括'\n';。如何不包含它,以便我可以对文本排序并更改它?

Python—从文件中提取数据并插入数组包括'\n';。如何不包含它,以便我可以对文本排序并更改它?,python,arrays,list,Python,Arrays,List,我有一些.txt文件,这些文件有图像的分类标签,每一行上都有不同的标签。 标签或行的最大数量为7。在不同数量的标签和顺序中,它看起来像这样: 标签1 标签3 标签2 标签5 当我将数据拉入数组时,它包括“\n”(用于新行)并在一行中查看数据。对于3个文件,我期待类似的内容: y=([label1,label3,label2,label5],[label1],[label5,label2,label3]) 或者至少 y=((label1,label3,label2,label5),(label1)

我有一些.txt文件,这些文件有图像的分类标签,每一行上都有不同的标签。 标签或行的最大数量为7。在不同数量的标签和顺序中,它看起来像这样:

标签1

标签3

标签2

标签5

当我将数据拉入数组时,它包括“\n”(用于新行)并在一行中查看数据。对于3个文件,我期待类似的内容:

y=([label1,label3,label2,label5],[label1],[label5,label2,label3])

或者至少

y=((label1,label3,label2,label5),(label1),(label5,label2,label3))

我的代码如下:

y=[ ]
for path in [f for f in os.listdir(DATA_DIR) if f[-4:] == ".png"]:  # for .png files in directory
    with open(DATA_DIR + path[:-4] + ".txt", "rU") as s:  # opens a .txt file of same name as image
        label = s.read()
        #print(label)
    y.append(label)

但是,这给出了文件中由新行代码“\n”分隔的内容。我认为“rU”删除了数据中的“\n”值,并允许将其正确地放入列表或数组中。

我喜欢使用str.splitlines(),它将为您处理各种换行

我想你可能想要

y.append(label.split('\n'))

查看rstrip()或str.replace(“\n”,”)耶!现在进入下一步。非常感谢大家!!print(y[5])给出['label5','label1']print(y[900])给出['label1','label3','label4']
。splitlines()
是正确的解决方案,它将正确处理任何换行标记。