【问题标题】:setting a string variable for a specific context为特定上下文设置字符串变量
【发布时间】:2020-04-01 00:41:56
【问题描述】:
import gzip
with gzip.open('File_name', 'rb')as f:

for line in f:
    line.decode("utf-8") #Is this how I transfer bytes to string in this context ?

print(line)


doc = nlp(line)* #If I define "line", it would give an output of the entire text instead of below"

print("Abbreviation", "\t", "Definition")

for abrv in doc._.abbreviations:
print(f"{abrv} \t ({abrv.start}, {abrv.end}) {abrv._.long_form}")

如何将字符串变量设置为“line”,以便将其输入到 nlp 函数中? 我尝试为它设置一个定义,但它会打印出整个文本而不是运行缩写输出。

【问题讨论】:

  • 请提供期望MRE。您的措辞并没有完全说明您要做什么,而且您发布的大部分代码都与问题无关。
  • 我刚刚编辑了它,我很抱歉缺乏清晰和额外的措辞,因为我是 python 新手。我留下 gzip 导入和其他额外信息的原因是我觉得它与问题的上下文相关
  • 问题出在哪里也不完全清楚:您是否遇到错误?如果是这样,您可以发布跟踪吗?还是您看到的结果与您想要的不同?如果是这样,预期和实际结果究竟是什么?

标签: python nlp spacy


【解决方案1】:

代码有点难以阅读,因为缩进不匹配。 但是你可以试试:

line = line.decode("utf-8")

在 Python 中,字符串是不可变的,因此无论何时对字符串执行函数,都需要将结果捕获到一个变量中,无论是新的 var 还是现有的 var。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-04-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-09-04
    相关资源
    最近更新 更多