2017-02-16 123 views
1

搜索廣泛的答案,並做了一些不成功的嘗試,但似乎無法弄清楚如何做到以下幾點:將文本文件拆分爲單獨的文件,並將子字符串保存爲文件名;蟒蛇

我使用下面的python代碼來保存文本的每一行文件作爲一個單獨的文件:

with open("filename.txt") as sourcefile: 
    for i, line in enumerate(sourcefile): 
     with open("filename{}.txt".format(str(i+1)), "w") as txtfile: 
      txtfile.write(line) 

這造成文件名如下:filename1.txt,filename2.txt,filename3.txt。我想要做的是在每行文件的單獨文件名中插入每行文本前30個字符的子字符串。

例如,假設原始文件中的第一行是句子「我想今晚晚餐吃披薩」。我想將該行的文件名保存爲「文件名我想要一個披薩fo.txt」。

任何幫助,非常感謝。

回答

0

如果我理解正確,您想要爲每個文件命名每個line的前30個字符。要做到這一點,你可以用line[0:29],這意味着「切斷字符0到29之間的串line([開始:結束])

樣品:。

with open("filename.txt") as sourcefile: 
    for i, line in enumerate(sourcefile): 
     with open("filename {}.txt".format(line[0:29]), "w") as txtfile: 
      txtfile.write(line) 
+0

這非常非常感謝,馬塞洛! –

+0

隨時@MJMJ。 – 2017-02-17 00:02:40

相關問題