单词统计详解---pyhton

有一个.txt的文本文件,对齐单词进行统计,并显示单词重复做多的10个单词

思路:

1将文本文件进行逐行处理,并进行空格分割处理

2新建一个字典,使用get方法将单词一次添加到字典中,并用sorted方法进行排序。

这里解释一下最后一句的意思,有些同学可能看不懂。

3统计path单词个数

但是path有很多其他符号,如何提取,只保留path单词呢?

方法1:

创建一个列表,使用replace将特俗符号换成空格,添加到列表中,不是的直接添加到列表中,使用split方法分割出空格

方法二使用正则表达式

方法三使用切片

def make_key(line: str):

line = line.lower()

chars = set("""~!@#$%^&*()_-+=|{}[]:;"'<>?/,.\n\r\t""")

ret = []

start=0

length=len(line)

for i,c in enumerate(line):

if c in chars:

if start==i:#说明连续两个字符是特殊字符,

start+=1

continue#跳过

ret.append(line[start:i])

start=i+1

else:

if start<length:

ret.append(line[start:])

return ret

line="b([a"#出现连续非法字符

#line="""os.path.commomprefix(['/usr/lib' split/replace sub'"""

print(*make_key(line))

完整代码

相关推荐
西瓜味儿的小志12 分钟前
Redis的大key和热key问题
数据库·redis·缓存·中间件
练小杰3 小时前
我在广州学 Mysql 系列——有关数据表的插入、更新与删除相关练习
android·运维·数据库·经验分享·学习·mysql·adb
水宝的滚动歌词4 小时前
设计模式之建造者模式
java·设计模式·建造者模式
孤蓬&听雨4 小时前
Java SpringBoot使用Apache POI导入导出Excel文件
java·spring boot·apache·excel导出·excel导入
silence2504 小时前
oracle基础:将字段从 VARCHAR 修改为 CLOB
数据库·oracle
hqxnb6665 小时前
深入理解 Linux 管道:创建与应用详解(匿名管道&&进程池)
linux·运维·服务器
2301_767233225 小时前
数据库中的并发控制
数据库·oracle
->yjy5 小时前
数据库系统概论期末复习
数据库·oracle
huaqianzkh5 小时前
反规范化带来的数据不一致问题的解决方案
数据库·系统架构
睿思达DBA_WGX5 小时前
Oracle Dataguard(主库为单节点)配置详解(1):Oracle Dataguard 工作原理
数据库·oracle