Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何替换单词、计数单词和保存计数_Python - Fatal编程技术网

Python 如何替换单词、计数单词和保存计数

Python 如何替换单词、计数单词和保存计数,python,Python,首先,我需要替换与风险相关的词,如riskier riskless[风险](risk)risk。冒险!风险*计入风险,只计算风险并返还 这样做是有条件的。我不应该把“风险-”和任何像星号这样有风险的词作为一个组成部分来计算 例如,在一个长文档中,可能会有很多与风险相关的词。为了简化解释 # 我喜欢冒险。我不喜欢走更冒险的路线 无风险利率是多少 什么是星号?[风险]就是风险 # 根据上述文件, 1) 需要将风险和更高风险替换为风险。(也可能有其他词,所以不要坚持使用风险更高的词)。 2) 仅计算风

首先,我需要替换与风险相关的词,如riskier riskless[风险](risk)risk。冒险!风险*计入风险,只计算风险并返还

这样做是有条件的。我不应该把“风险-”和任何像星号这样有风险的词作为一个组成部分来计算

例如,在一个长文档中,可能会有很多与风险相关的词。为了简化解释

# 我喜欢冒险。我不喜欢走更冒险的路线

无风险利率是多少

什么是星号?[风险]就是风险

# 根据上述文件, 1) 需要将风险和更高风险替换为风险。(也可能有其他词,所以不要坚持使用风险更高的词)。 2) 仅计算风险,包括[风险]风险。但不是风险和星号

这个例子非常简单。同样,“风险”一词,如“风险-风险-风险-风险-风险-风险”一词,任何“风险”一词的内部([{,任何以。*!?等开头或结尾的“风险”应在替换为“风险”后计算在内。任何包含风险作为一个组成部分的词都不应计算在内。此外,风险-也不应计算在内

谢谢


市场风险[risk

这实际上是一个如何编写正则表达式的问题。我不太擅长RE。但以下内容适用于您的示例:

>>重新导入
>>>我喜欢冒险。我不喜欢走更冒险的路线。
无风险利率是多少?
什么是星号?【风险】是风险
>>>图案=r'\brisk[^\-]?\w*\b'
>>>关于subn(模式,“风险”,应科院)
(“\n我喜欢冒险。我不喜欢冒险。\n无风险利率是多少?\n什么是星号?[risk]是风险。\n”,5)

基于以上,您可以将您的逻辑实现为:

计数=0
打开(myfile,'r')作为f:
打开(我的新文件“a”)作为fo:
对于f中的行:
换行符,lcount=re.subn(模式,'risk',行)
计数+=L计数
fo.write(换行符)

在将风险+一些字符串(风险更高的)替换为风险、删除风险之后,我这样做了。单独执行这么多步骤需要花费太多时间。从集合导入defaultdict>>>word\u dict=defaultdict(int)>>>对于mylist中的行:word=line.lower().split()对于word-in-word:word-in-word[word]+=1>>>对于word-in-word:word中的'risk',word-in-word[word]('risk',7)('asterisk',1)('risk',1)注意:一般来说,您可能需要类似于package的东西。我有一个错误。它说计数没有定义。“a”选项是什么意思?'a'选项用于追加。(请参阅)'a'表示“追加”,打开文件时三种模式之一(即读-r、写-w、附加-a)。@Jimmy,
counts=0
在John的第二个代码段开头定义了
counts
变量。您是否错过了那一行?否则,请发布准确的错误消息。