实际上你有两个问题。

首先,这:line = re.sub("[^A-Za-z]", "", line.strip())

这将删除行中的所有非字母。这意味着你不再有任何空间可以分割,因此无法将其分割成文字。

接下来,即使你没有这样做,你也要这样做:words = ' '.join(line.split())

这不会给你一个单词列表,而是给你一个字符串,把所有的单词串在一起。(基本上,原始行的所有空格都转换为一个空格。)

所以,在下一行中,当您这样做时:for word in words:

你在一个字符串上迭代,这意味着每个word都是一个字符。因为这就是字符串的含义:一系列字符。

如果您想要每个单词(正如您的变量名所暗示的那样),那么您已经拥有了它们,问题是您将它们重新连接到一个字符串中。不要这样做:words = line.split()

for word in words:

或者,如果要除去字母和空白以外的内容,请使用正则表达式除去字母和空白以外的所有内容,而不是除去字母以外的所有内容,包括空白:line = re.sub(r"[^A-Za-z\s]", "", line.strip())

words = line.split()

for word in words:

然而,这种模式可能仍然不是你想要的。你真的想把'abc1def'变成一个字符串'abcdef',还是变成两个字符串'abc'和'def'?你可能想要这个:line = re.sub(r"[^A-Za-z]", " ", line.strip())

words = line.split()

for word in words:

…或者只是:words = re.split(r"[^A-Za-z]", line.strip())

for word in words:

python所用到的英语单词_用python从字符串中提取英语单词相关推荐

  1. python怎么读取pdf为文本_如何从pdf文件中提取特定文本python

    我试图摘录这段文字:DLA LAND AND MARITIME ACTIVE DEVICES DIVISION PO BOX 3990 COLUMBUS OH 43218-3990 USA Name: ...

  2. python输出用逗号隔开的数字_Python:从字符串中提取带有点和逗号的数字

    我正在分析Python中的单词和数字.我只对数字感兴趣,即只对0到9.点(.)和逗号(,)感兴趣.我对保留点和逗号很感兴趣,因为有些文件是用美式数字(即3.14159)编写的,而有些文件是用欧洲(德语 ...

  3. c语言统计最长单词长度,求3个字符串中最长单词的长度 求救 会一个的

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 这是我编的1个得 #include #include int main() {int alphabetic(char); int longest(char ...

  4. 字符串中最长单词输出

    输出字符串中最长单词 关键在于找出字符串中最长单词的起始下标与单词长度 int main() {int is_letter(char c);void f(char a[]);char a[100];g ...

  5. python关键词提取_如何从Python格式字符串中提取关键字? - python

    我想在API中提供自动字符串格式,例如: my_api("path/to/{self.category}/{self.name}", ...) 可以替换为格式化字符串中标注的属性值 ...

  6. python文本分析 提取数据含义_从文本字符串中提取数据进行分析

    需求 在进行数据分析的时候,有时候会碰到需要从文本字符串中提取需要的数据来进行分析的情况,这种需求在网络爬虫数据分析非常常见. 比如,需要下列表格"基础薪资规则"字段中提取阶梯单量 ...

  7. 实现统计一个字符串中的每个单词出现的次数--基于Go语言

    实现统计一个字符串中的每个单词出现的次数–基于Go语言 package mainimport ("fmt""strings" )func main() {//统 ...

  8. python正则表达式提取数字比较好_python正则表达式从字符串中提取数字的思路详解...

    python从字符串中提取数字 使用正则表达式,用法如下: ## 总结 ## ^ 匹配字符串的开始. ## $ 匹配字符串的结尾. ## \b 匹配一个单词的边界. ## \d 匹配任意数字. ## ...

  9. python 从字符串中提取数字 re.findall()

    以前老用(.*?)提取数字,今天发现不对了,比如一行数字为: 0 0.248438 0.255556 0.128125 0.194444 用: re.findall('(.*?) (.*?) (.*? ...

最新文章

  1. (七)python3 只需3小时带你轻松入门——List与dict
  2. P1137-旅行计划【拓扑排序,DAGdp】
  3. 【转】Ubuntu中SVN客户端安装+使用
  4. 表锁与行锁的区别以及适用情况
  5. 关于使用public class 和 class声明类的区别
  6. 随机函数(Pascal入门)
  7. cocos2d-x学习之旅(九): 2.2 盘古开天辟地,进入游戏世界
  8. Oracle表空间设计理念
  9. mike21换成计算机名称,MIKE 21
  10. OCR 常用软件对比
  11. C++化学元素周期表
  12. 小波阈值去噪c语言程序,小波阈值去噪MATLAB程序
  13. C语言---简单五子棋小游戏
  14. python画图y轴在右侧_Python 使用matplotlib画图添加标注、及移动坐标轴位置
  15. 干货!让人一见钟情的网站header设计攻略
  16. 0083-Zipkin耗时分析
  17. 职场情商“知多少”?
  18. 可以作为艺术作品欣赏的CT三维重建技术。
  19. python开发web服务器——搭建简易网站
  20. [每周一读]——不让时间偷走你的成功

热门文章

  1. PIE-Label样本标绘软件
  2. 微信服务号开发----创建个性化菜单
  3. 2022 PostgreSQL 数据库生态大会:拓数派资深工程师 王淏舟将发表主题演讲
  4. Linux挂载ssd移动硬盘,linux下挂载移动硬盘
  5. 咖说 | 潘超:数字货币「矩阵」里的「盗梦空间」
  6. 软考架构师(第十二章 系统可靠性分析与设计 -- 案例题,论文)
  7. 百度ai 人脸识别 java_百度ai 接口 人脸识别
  8. 超文本超链接HTTP协议
  9. 如何规划、建设你的数据库架构
  10. 服务器w8系统如何重装系统,如何重装Windows8.1 Win8.1系统重装流程图解