python – 元组列表中元组的小写第一个元素

python – 元组列表中元组的小写第一个元素,第1张

概述我有一份文件清单,标有适当的类别: documents = [(list(corpus.words(fileid)), category) for category in corpus.categories() for fileid in corpus.fileids(category)] 这给了我以下的元组列表,其中元组的第一个元素是一个单 我有一份文件清单,标有适当的类别:

documents = [(List(corpus.words(fileID)),category)              for category in corpus.categorIEs()              for fileID in corpus.fileIDs(category)]

这给了我以下的元组列表,其中元组的第一个元素是一个单词列表(一个句子的标记).例如:

[([u'A',u'pilot',u'investigation',u'of',u'a',u'multidisciplinary',u'quality',u'life',u'intervention',u'for',u'men',u'with',u'biochemical',u'recurrence',u'prostate',u'cancer',u'.'],'cancer'),([u'A',u'Systematic',u'RevIEw',u'the',u'Effectiveness',u'Medical',u'Cannabis',u'Psychiatric',u',',u'Movement',u'and',u'Neurodegenerative',u'disorders','hd')]

我想应用一些文本处理技术,但我希望保持元组格式列表.

我知道,如果我只有一个单词列表,那么这样做:

[w.lower() for w in words]

但在这种情况下,我想将.lower()应用于元组列表中每个元组的第一个元素(字符串列表),并在尝试各种选项后:

[[x.lower() for x in element] for element in documents],[(x.lower(),y) for x,y in documents],or[x[0].lower() for x in documents]

我总是得到这个错误:

AttributeError: ‘List’ object has no attribute ‘lower’

我也尝试在创建列表之前应用我需要的东西,但.categorIEs()和.fileIDs()是语料库的属性,它们也返回相同的错误(它们也是列表).

任何帮助将深表感谢.

解决了:

@Adam Smith的答案和@vasia都是对的:

[([s.lower() for s in item[0]],item[1]) for item in documents]

@ Adam的答案保持了元组结构; @vasia从创建元组列表中做到了这一点:

documents = [([word.lower() for word in corpus.words(fileID)],category)              for category in corpus.categorIEs()              for fileID in corpus.fileIDs(category)]

谢谢你们 :)

解决方法 所以你的数据结构是[([str],str)].每个元组所在的元组列表(字符串列表,字符串).在尝试从中提取数据之前,深入了解这意味着什么是很重要的.

这意味着对于文档中的项目将获得元组列表,其中item是每个元组.

这意味着item [0]是每个元组中的列表.

这意味着对于文档中的项目:对于项目[0]中的s:将遍历该列表中的每个字符串.我们来试试吧!

[s.lower() for item in documents for s in item[0]]

这应该从您的示例数据中给出:

[u'a',u'p',u'i',u'o',u'm',...]

如果你想保留元组格式,你可以这样做:

[([s.lower() for s in item[0]],item[1]) for item in documents]# or perhaps more readably[([s.lower() for s in lst],val) for lst,val in documents]

这两个陈述都给出了:

[([u'a',...],... ]
总结

以上是内存溢出为你收集整理的python – 元组列表中元组的小写第一个元素全部内容,希望文章能够帮你解决python – 元组列表中元组的小写第一个元素所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1194056.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-03
下一篇 2022-06-03

发表评论

登录后才能评论

评论列表(0条)

保存