Python 拆分并打印\of*n行前后的单词,从一个txt到两个不同的txt';s
我四处搜索了一下,但找不到适合我需要的解决方案。 我是python新手,如果我的问题很明显,我很抱歉 我有一个.txt文件(为简单起见,我将其称为inputfile.txt),其中包含文件夹\文件的名称列表,如下所示:Python 拆分并打印\of*n行前后的单词,从一个txt到两个不同的txt';s,python,python-3.x,file,split,txt,Python,Python 3.x,File,Split,Txt,我四处搜索了一下,但找不到适合我需要的解决方案。 我是python新手,如果我的问题很明显,我很抱歉 我有一个.txt文件(为简单起见,我将其称为inputfile.txt),其中包含文件夹\文件的名称列表,如下所示: camisos\CROWDER_IMAG_1.mov camisos\KS_HIGHENERGY.mov camisos\KS_LOWENERGY.mov 我需要的是拆分第一个单词(在\之前的一个)并将其写入一个txt文件(为简单起见,我将其称为outputfile.txt)
camisos\CROWDER_IMAG_1.mov
camisos\KS_HIGHENERGY.mov
camisos\KS_LOWENERGY.mov
我需要的是拆分第一个单词(在\
之前的一个)并将其写入一个txt文件(为简单起见,我将其称为outputfile.txt)
然后取第二个(在\
之后的一个)并将其写入另一个txt文件
这就是我目前所做的:
with open("inputfile.txt", "r") as f:
lines = f.readlines()
with open("outputfile.txt", "w") as new_f:
for line in lines:
text = input()
print(text.split()[0])
在我看来,这应该只打印新txt中的第一个单词,但我只得到一个空的txt文件,没有任何错误
非常感谢您的建议,提前感谢您给我的帮助。您可以在字符串列表中读取文件,并拆分每个字符串以创建两个单独的列表
with open("inputfile.txt", "r") as f:
lines = f.readlines()
X = []
Y = []
for line in lines:
X.append(line.split('\\')[0] + '\n')
Y.append(line.split('\\')[1])
with open("outputfile1.txt", "w") as f1:
f1.writelines(X)
with open("outputfile2.txt", "w") as f2:
f2.writelines(Y)
您是否尝试过查看
os.path
?我已经检查过了,但在我的例子中,路径在txt文件中,而不是路径本身。也许我不太明白os.path是如何工作的。os.path.basename(text)
应该只返回文件名,非常感谢。一个问题:如果[0]返回第一个单词,[-1]返回最后一个单词,那么1做什么?n表示第(n+1)个元素。所以[1]将返回第二个元素。在本例中,第二个元素是最后一个元素。