要求用户输入文本文件名

2024-04-24 13:01:43 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一段python代码,它对文本文件中的单词列表进行词干分析,并将结果保存到另一个文本文件中,但我想通过以下方式调整代码:

  1. 要求用户输入输入的完整路径(文字文本文件)

  2. 将输出(原始单词+词干单词)保存在用户输入的完整路径文本文件中

    import nltk
    from nltk.stem import PorterStemmer
    from nltk.stem import LancasterStemmer
    from nltk.stem.porter import PorterStemmer
    stemmer = PorterStemmer()
    with open(r'C:\Users\hp\Desktop\Final Project\now.txt', 'r') as fp:
    tokens = fp.readlines()
    for t in tokens:
     s = stemmer.stem(t.strip())
     print(s, file=open("output.txt", "a"))
    

有什么帮助吗


Tags: 代码用户fromimport路径txtopen单词
1条回答
网友
1楼 · 发布于 2024-04-24 13:01:43
from nltk.stem.porter import PorterStemmer

stemmer = PorterStemmer()

input_path = input("Please type the path of the input file: ")
output_path = input("Please type the path of the output file: ")

with open(input_path, 'r') as fp:
    tokens = fp.readlines()

for t in tokens:
    s = stemmer.stem(t.strip())
    print(f"{t.strip()} {s}", file=open(output_path, "a"))

说明:

  • ^{}函数打印一个提示(作为参数接收的字符串),并等待输入,然后返回
  • ^{}语句用于上下文管理,并将导致在退出上下文时自动关闭打开的文件。在此上下文中执行的代码必须缩进。你可以阅读更多here
  • for循环要求正在循环的代码缩进
  • 为了优雅地显示一个接一个的单词及其词干,使用了f-strings.strip()函数删除空白-这意味着它将删除给定字符串中的任何空格或换行符
  • 最后,代码运行不需要大多数导入,因此它们被删除

相关问题 更多 >