我正在尝试读取200个txt文件并做一些预处理。你知道吗
1)如何编写更简单的代码,而不是为每个txt文件编写相同的代码?你知道吗
2)我能把正则表达式和rstrip结合起来吗?你知道吗
->;主要是,我想去掉“\n”,但有时它们与其他字母。所以我想要的是删除\n以及与\n组合的单词(即“\n?”, "!\“不”。。以此类推)
3)在最后一行,有没有一种方法可以用更简单的代码将所有列表添加到一个列表中? 你知道吗
data = open("job (0).txt", 'r').read()
rows0 = data.split(" ")
rows0 = [item.rstrip('\n?, \n') for item in rows0]
data = open("job (1).txt", 'r').read()
rows1 = data.split(" ")
rows1 = [item.rstrip('\n?, \n') for item in rows1]
你知道吗 …..(最多200个文件)
data = open("job (199).txt", 'r').read()
rows199 = data.split(" ")
rows199 = [item.rstrip('\n?, \n') for item in rows199]
ds_l = rows0 + rows1 + ... rows199
首先,我不是python专家。但既然这个问题已经存在了一段时间。。。(如果没人看这个,至少我不会被否决)
1)使用循环,阅读编程教程。 例如,请参阅这篇关于如何获取所有行的列表的文章How do I read a file line-by-line into a list?。然后你可以在列表上循环。你知道吗
2)不知道是否可以使用带strip的regex,这让我来到这里,所以如果你发现了,告诉我。你知道吗
不清楚您到底想要什么,您是想去掉所有包含“/n”的(空格分隔的)单词,还是只删除“/n”、“/n?”,... 部分单词?你知道吗
在第一种情况下,一个简单、不合法的解决方案是在一行和一行中的所有单词上有两个循环
# loop over rows with i as index row = rows[i].split(" ") for j in range len(row): if("/n" in row[j]) del row[j] rows[i] = " ".join(row)
在后一种情况下,如果没有那么多要删除的表达式,则可以使用回复sub()不知怎么的。谷歌帮助;)
3)如果将行作为字符串的“行”列表,则可以使用join:
ds_1 = "".join(rows)
(对于join:Python join: why is it string.join(list) instead of list.join(string)?)
相关问题 更多 >
编程相关推荐