python英文单词个数统计(python统计英文句子每个单词字数)
python怎么统计一句英语的单词数量并输出?
题主你好,
代码及测试截图如下:
说明: 上图红框处的result可不写, 只是为了看一下分隔结果是否正确.
希望可以帮到题主, 欢迎追问.
Python里,输入一个英文句子,统计并输出单词个数,怎么弄啊?
你好,答案如下所示。mydict={}
for i in input("英文句子").split():
? ? if i in mydict:
? ? ? ? mydict[i]+=1
? ? else :
? ? ? ? mydict[i]=1
for ?key,value in mydict.items():
? ? print(key,value)
希望你能够详细查看。
如果你有不会的,你可以提问
我有时间就会帮你解答。
希望你好好学习。
每一天都过得充实。
python统计个单词数目
楼上的程序存在诸多问题,如没有处理标点,文件读取方法错误等。
请问楼主要区分大小写吗?如果区分的话,就按照下面的来:
import re
def get_word_frequencies(file_name):
dic = {}
txt = open(filename, 'r').read().splitlines()
#下面这句替换了除了'-'外的所有标点,因为'-'可能存在于单词中。
txt = re.sub(r'[^\u4e00-\u94a5\w\d\-]', ' ', txt)
#替换单独的'-'
txt = re.sub(r' - ', ' ', txt)
for line in :
for word in line.split():
#如果不区分大小写,那就一律按照小写处理,下面那句改为dic.setdefault(word.lower(), 0)
dic.setdefault(word, 0)
dic[word] += 1
print dic
if __name__ = '__main__':
get_word_frequencies('test.txt')
有问题继续追问吧
python求单词个数
#s="Hello,my name is Jim Green and you?"
s=input("输入英文句子:")
lens=len(s) #字符总数
listb = []
js = 0
for j in s:
'''(Tab)处作缩进代码处理'''
(Tab)if j in [",", ".", "!", "?"]:
(Tab)(Tab)js += 1 # 标点符号计数
(Tab)(Tab)j = " "
(Tab)(Tab)listb.append(j)
(Tab)else:
(Tab)(Tab)listb.append(j)
ss = ("".join(listb))
ssl = ss.split(" ")
lenssl = len(ssl)+1-js #单词总数
#print(f"{s}\n{ss}")
print(f"{lens}#{lenssl}")
'''运行效果
输入英文句子:Hello,my name is Bob.
21#5
'''
python统计单词中字母个数
代码:
string = "T-shirt"
letters = []
for i in range(65, 91):
? letters.append(chr(i))#A-Z
for i in range(97, 123):
? letters.append(chr(i))#a-z
num = 0
for i in string:
? if i in letters:#如果是字母
? ? ? num += 1
print(num)#输出num
运行效果:
6
备注:加粗部分的单词可以自己改。
解析:
通过ASCII码和chr函数查找到所有大小写字母,再逐一遍历单词,如果是字母就+1个,这样就可以得到统计数据了。
python统计各字母个数
一、实现思路
需要统计字符串中每个字母出现的次数;如果字母是第一次出现的话,就把次数置为1,如果字母非第一次出现的话,就需要在原字母已保存次数上加1;仔细思考一下,需要保存字母和出现次数,然后相同字母出现多次的话,需要在原字母保存的次数加1;字典这种数据类型可以实现这种需求。
二、代码实现
2.1 统计字母出现次数
统计字符串每个字母出现次数源码:
def count_each_char(str):
dict = {}
for i in str:
if i not in dict:
dict[i] = 1
else:
dict[i] += 1
return dict
if __name__ == "__main__":
res = count_each_char("abdefdcsdf")
print(res)
简化版统计字符串字母出现次数源码:
dict[i] 表示的是字典中字母对应的value(出现次数)
dict.get(i,0)+1 表示的是从字典获取字母,如果字典中没有查找到对应字母,则将字母i,次数1存入字典
def count_each_char(str):
dict = {}
for i in str:
dict[i]=dict.get(i,0)+1
return dict
运行结果:
2.2 按字母出现次数排序
根据字母出现次数倒序排列源码:
def count_each_char_sort_value(str):
dict = {}
for i in str:
dict[i] = dict.get(i, 0) + 1
# sorted 方法会生成一个排序好的容器
# operator.itemgetter(1) 获取字典第一维的数据进行排序
# reverse 表示倒序排列
dict=sorted(dict.items(),key= operator.itemgetter(1),reverse=True)
return dict
if __name__ == "__main__":
res = count_each_char_sort_value("abdefdcsdf")
print(res)
运行结果:
从运行结果可以看出,通过调用sorted方法,已经根据指定的key进行倒序排序了