我是Python的初学者。
我正在编写一个使用&#34的Python脚本;替换收缩"用扩展的单词替换同一目录中所有文本文件中的收缩,然后将替换的文件输出到另一个目录。
目前代码如下所示:
import re, string, unicodedata
import nltk
import contractions
import inflect
import os
txt_files = [f for f in os.listdir('./test') if f.endswith('.txt')]
fd = open(txt_files)
with open(txt_files)as fd:
fd.method
fd.close()
def replace_contractions(text):
"""Replace contractions in string of text"""
return contractions.fix(text)
output_strings = map(replace_contractions, txt_files)
output_content = "".join(sorted(output_strings)) # sort join the output strings without separators
# write to file
with open(folder_path + output_filename, 'wt') as outfile:
outfile.write(output_content)
我收到的错误是:
"Traceback (most recent call last):
File "C:\Users\User\Desktop\Text Preprocessing.py", line 9, in <module>
fd = open(txt_files)
TypeError: invalid file: ['1.txt', '2.txt']"
任何人都可以建议我解决错误吗?谢谢!
我现在已将我的代码编辑为以下内容:
import re, string, unicodedata
import nltk
import contractions
import inflect
import os
txt_files = [f for f in os.listdir('./test') if f.endswith('.txt')]
import glob
for each_file in glob.glob("arc\.\d+\.txt"):
print(each_file)
def replace_contractions(text):
"""Replace contractions in string of text"""
return contractions.fix(text)
output_strings = map(replace_contractions, txt_files)
output_content = "".join(sorted(output_strings)) # sort join the output strings without separators
# write to file
folder_path = 'C:\\Users\\User\\Desktop\\test1\\'
output_filename = os.path.join(folder_path, '.txt')
with open(output_filename, 'wt') as outfile:
outfile.write(output_content)
没有错误。但我有2个输出文件。第一个是带有字符串&#34; 1.txt2.txt&#34;的文本文件。在文本文件中,第二个文件的文件名为下划线,没有任何扩展名。我没有在txt文件中获得所需的输出,即扩展txt文件内文本中的收缩。任何人都可以帮忙吗?