统计文件中英文单词个数

本文详细介绍了Python中strip()、split()和sorted()三个字符串处理函数。strip()用于去除字符串开头和结尾的指定字符,split()则用于按照指定分隔符拆分字符串,并可设置分隔次数。sorted()函数则用于对序列进行排序,可以自定义排序依据。文章还探讨了排序的稳定性和不同排序方法的使用场景。
摘要由CSDN通过智能技术生成



# encoding:utf-8

import string

with open('EnglishFile.txt', 'r') as f:
    result_dict = {}
    strip = string.whitespace + string.punctuation
    for line in f.readlines():
        listWords = line.lower().split()  # 不区分大小写的情况
        for eachLetter in listWords:
            eachLetter = eachLetter.strip(strip)
            if len(eachLetter) > 0:
                result_dict[eachLetter] = result_dict.get(eachLetter, 0) + 1
    result = sorted(result_dict.items(), key=lambda d: d[1], reverse=True)
    for each in result:
        print each


strip()函数

s为字符串,rm为要删除的字符序列

s.strip(rm)        删除s字符串中开头、结尾处,位于 rm删除序列的字符

s.lstrip(rm)       删除s字符串中开头处,位于 rm删除序列的字符

s.rstrip(rm)      删除s字符串中结尾处,位于 rm删除序列的字符

注意:

1. 当rm为空时,默认删除空白符(包括'\n', '\r',  '\t',  ' ')

例如:

复制代码 代码如下:

>>> a = '     123'
>>> a.strip()
'123'
>>> a='\t\tabc'
'abc'
>>> a = 'sdff\r\n'
>>> a.strip()
'sdff'

2.这里的rm删除序列是只要边(开头或结尾)上的字符在删除序列内,就删除掉。

例如 :

复制代码 代码如下:

>>> a = '123abc'
>>> a.strip('21')
'3abc'   结果是一样的
>>> a.strip('12')
'3abc'


split()函数

Python中有split()和os.path.split()两个函数,具体作用如下:
split():拆分字符串。通过指定分隔符对字符串进行切片,并返回分割后的字符串列表(list)
os.path.split():按照路径将文件名和路径分割开

一、函数说明
1、split()函数
语法:str.split(str="",num=string.count(str))[n]

参数说明:
str:   表示为分隔符,默认为空格,但是不能为空('')。若字符串中没有分隔符,则把整个字符串作为列表的一个元素
num:表示分割次数。如果存在参数num,则仅分隔成 num+1 个子字符串,并且每一个子字符串可以赋给新的变量
[n]:   表示选取第n个分片

注意:当使用空格作为分隔符时,对于中间为空的项会自动忽略

2、os.path.split()函数
语法:os.path.split('PATH')

参数说明:

  1. PATH指一个文件的全路径作为参数:
  2. 如果给出的是一个目录和文件名,则输出路径和文件名
  3. 如果给出的是一个目录名,则输出路径和为空文件名


二、实例
1、常用实例
 

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
>>> u = "www.doiido.com.cn"
  
#使用默认分隔符
>>> print u.split()
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值