python - Python /从异常文件中获取唯一令牌
问题描述
我想查找文件中唯一令牌的数量。为此,我编写了以下代码:
splittedWords = open('output.txt', encoding='windows-1252').read().lower().split()
uniqueValues = set(splittedWords)
print(uniqueValues)
output.txt 文件是这样的:
Türkiye+Noun ,+Punc terörizm+Noun+Gen ve+Conj kitle+Noun imha+Noun silah+Noun+A3pl+P3sg+Gen küresel+Adj düzey+Noun+Loc olus+Verb+Caus+PastPart+P3sg tehdit+Noun+Gen boyut+Noun+P3sg karsi+Adj+P3sg+Loc ,+Punc tüm+Det ülke+Noun+A3pl+Gen yay+Verb+Pass+Inf2+Gen önle+Verb+Pass+Inf2+P3sg hedef+Noun+A3pl+P3sg+Acc paylas+Verb+PastPart+P3pl ,+Punc daha+Noun güven+Noun+With ve+Conj istikrar+Noun+With bir+Num dünya+Noun düzen+Noun+P3sg için+PostpPCGen birlik+Noun+Loc çaba+Noun göster+Verb+PastPart+P3pl bir+Num asama+Noun+Dat gel+Verb+Pass+Inf2+P3sg+Acc samimi+Adj ol+Verb+ByDoingSo arzula+Verb+Prog2+Cop .+Punc
Ab+Noun ile+PostpPCNom gümrük+Noun Alan+Noun+P3sg+Loc+Rel kurumsal+Adj iliski+Noun+A3pl
club+Noun toplanti+Noun+A3pl+P3sg
Türkiye+Noun+Gen -+Punc At+Noun gümrük+Noun isbirlik+Noun+P3sg komite+Noun+P3sg ,+Punc Ankara+Noun Anlasma+Noun+P3sg+Gen 6+Num madde+Noun+P3sg uyar+Verb+When ortaklik+Noun rejim+Noun+P3sg+Gen uygula+Verb+Pass+Inf2+P3sg+Acc ve+Conj gelis+Verb+Inf2+P3sg+Acc sagla+Verb+Inf1 üzere+PostpPCNom ortaklik+Noun Konsey+Noun+P3sg+Gen 2+Num /+Punc 69+Num sayili+Adj karar+Noun+P3sg ile+Conj teknik+Noun komite+Noun mahiyet+Noun+P3sg+Loc kur+Verb+Pass+Narr+Cop .+Punc
nispi+Adj
nisbi+Adj
görece+Adj+With
izafi+Adj
obur+Adj
使用此代码,我可以获得独特的标记,如 Türkiye+Noun、Türkiye+Noun+Gen。但我想得到例如 Türkiye+Noun, Türkiye+Noun+Gen 就像 + 号之前只有一个标记。我只想要 Türkiye 部分。最后 Türkiye+Noun 和 Türkiye+Noun+Gen 标记需要相同,并且只被视为单个唯一标记。我想我需要为此目的编写正则表达式。
解决方案
您可以在“+”上拆分您现在拥有的所有令牌并只取第一个。
uniqueValues = set(map(lambda x: x.split('+')[0], splittedWords))
这里我使用地图。Map 将对 splittedWords 的所有值应用函数(lambda 部分)。
推荐阅读
- c# - 当我单击另一个按钮时,是否可以更改按钮的功能?
- javascript - 在makeStyles Material UI中悬停在第一个子div上时选择第二个子div
- c# - excel表格页数
- javascript - Alpaca 框架 select with multiple:true 继承其前兄弟的选择状态
- c# - 调用中的参数数量或类型错误
- python - 在 django 的 CreateView 中发布后重定向到引用者
- arrays - Vuejs 观察动态数组元素的变化
- python - 如何用 x 轴从两个数组中绘制图形将是两个数组的长度?
- heroku - 样式表 x 未加载,因为它的 MIME 类型“text/html”不是“text/css”
- javascript - 如何在节点js中定义模型,如对象