python代码:计算一个文本文件中所有大写字母,小写字母,数字和其他的数量。

并以字典的形式返回结果... 并以字典的形式返回结果 展开
 我来答
freechan10
2020-02-13 · TA获得超过2.9万个赞
知道小有建树答主
回答量:263
采纳率:68%
帮助的人:12.4万
展开全部

1、创建python代码,testread()file.py;

2、编写python代码,

import re

def getFileContent(str):

    str_value = str

    len_str_value = len(str_value)

    print(str_value)

    print(len_str_value)

    len_capital = len(re.compile(r'[A-Z]').findall(str_value))

    print(u'大写字母有%d个'%len_capital)

    len_lowercase = len(re.compile(r'[a-z]').findall(str_value))

    print(u'小写字母有%d个'%len_lowercase)

    len_num = len(re.compile(r'\d').findall(str_value))

    print(u'数字有%d个'%len_num)

    len_others = len_str_value -len_capital-len_lowercase-len_num

    print(u'其他的字符有%d个'%len_others)

    dict1 = {'capital':len_capital,'lowercase':len_lowercase,'others':len_others,'num':len_num}

    return dict1


if __name__ == '__main__':

    str = open('D:\\test.txt','r',encoding='UTF-8').read().replace('\t','').replace('\n','').replace(' ','').replace('space','')

    print(getFileContent(str))

3、右击‘在终端中运行Python文件’;

4、查看运行结果,满足需求;

小包子Ace
2016-11-10 · 超过17用户采纳过TA的回答
知道答主
回答量:51
采纳率:100%
帮助的人:14.2万
展开全部
#coding:utf-8
import re
def test(str_1):
    str1 = str_1
    len_str1 = len(str1)
    print len_str1
    len_capital = len(re.compile(r'[A-Z]').findall(str1))
    print u'大写字母有%d个'%len_capital
    len_lowercase = len(re.compile(r'[a-z]').findall(str1))
    print u'小写字母有%d个'%len_lowercase
    len_num = len(re.compile(r'\d').findall(str1))
    print u'数字有%d个'%len_num
    len_others = len_str1 -len_capital-len_lowercase-len_num
    print u'其他的字符有%d个'%len_others
    dict1 = {'capital':len_capital,'lowercase':len_lowercase,'others':len_others,'num':len_num}
    return dict1
if __name__ == '__main__':
    str_1 = open('c:\\test1.txt','r').read().replace('\t','').replace('\n','').replace(' ','').replace('space','')
    print test(str_1)

 

本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
乔布斯的同学
推荐于2018-03-01 · TA获得超过4175个赞
知道大有可为答主
回答量:5767
采纳率:83%
帮助的人:2406万
展开全部
>>> from collections import Counter
>>> c = Counter()
>>> for ch in 'programming':
...     c[ch] = c[ch] + 1
...
>>> c
Counter({'g': 2, 'm': 2, 'r': 2, 'a': 1, 'i': 1, 'o': 1, 'n': 1, 'p': 1})
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
帐号已注销
2018-04-10
知道答主
回答量:31
采纳率:0%
帮助的人:12.6万
展开全部
这是我用python3写的,字典老师还没讲……
a=input()
b="abcdefghigklmnopqrstuvwxyz"
m="0123456789"
c=str.upper(b)
d=0
e=0
n=0
q=0
h=0
z=len(a)
for i in range(z):
    if a[i] in b:
        d=d+1
    elif a[i] in c:
        e=e+1
    elif a[i] in m:
        n=n+1
    elif a[i] in " ":
        q=q+1
    else:
        h=h+1
print(d,e,n,q,h)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式