• 字符串、文件操作和英文词频统计预处理


    作业要求来自:https://edu.cnblogs.com/campus/gzcc/GZCC-16SE2/homework/2646

    1.字符串操作:

    解析身份证号:生日、性别、出生地等。

    number=input("请输入身份证号:")
    Y=number[6:10]
    M=number[10:12]
    D=number[12:14]
    sex=number[14:17]
    j=0
    if len(number) != 18:
        print('你输入得身份证号码有误 ')
    
    else:
        num = {'44': '广东省'}
        if int(sex) % 2 == 0:
              xingbie='女'
        else:
              xingbie='男'
    
        print('你出生在{},出生时间为{}年{}月{}日,性别为{}。'.format(num[number[0:2]],Y,M,D,xingbie))
    

    运行结果如下:

    凯撒密码编码与解码

    def change(c,i):
        c = c.lower()
        num = ord(c)
        if num >= 97 and num <= 122:
            num = 97 + ((num - 97) + i) % 26
        return chr(num)
    
    
    def kaisa_jiami(string,i):
        string_new = ''
        for s in string:
            string_new += change(s,i)
        print(string_new)
        return string_new
    
    def kaisa_jiemi(string):
        for i in range(25):
            print('
    ', i, '
    ')
            i += 1
            kaisa_jiami(string,i)
    
    
    def main():
        print('请选择操作:')
        print('1:加密')
        print('2:解密')
        choice = input()
        if choice == '1':
            string = input('请输入需要加密的字符串:')
            num = int(input('请输入需要偏移的位数:'))
            kaisa_jiami(string,num)
        elif choice == '2':
            string = input('请输入需要解密的字符串:')
            kaisa_jiemi(string)
        else:
            print('输入错误,请重试!')
            main()
    
    if __name__ == '__main__':
        main()
    

      运行结果如下:

    网址观察与批量生成

    for i in range(2,6):
        url='https://v.qq.com/{}.html'.format(i)
        print(url)
    

    运行结果如下:

    2.英文词频统计预处理

    • 下载一首英文的歌词或文章或小说,保存为utf8文件。
    • 从文件读出字符串。
    • 将所有大写转换为小写
    • 将所有其他做分隔符(,.?!)替换为空格
    • 分隔出一个一个的单词
    • 并统计单词出现的次数。

    代码

    def readFile():
        f=open("say.txt");
        text=f.read();
        print(text);
        f.close();
        return text;
    def splitText():
        dict={}
        s="124.,,"
        t=readFile().lower();
        for i in s:
            t=t.replace(i,'');
        t = t.split(); #分割文本
        for j in t:
            dict[j]=t.count(j);
        return dict;
    def sortDict():
        d=sorted(splitText().items(),reverse=True,key=lambda d:d[1]);  '元组排序,降序,按值排序'
        print("speech文本统计词频如下:
    ");
        for i in range(10):
           print(d[i][0],"--",d[i][1]);
    
    def main():
        sortDict();
    
    main();
    

      运行截图:

  • 相关阅读:
    可搜索的下拉框
    Vue 父组件调用子组件的方法
    vue中异步函数async和await的用法
    用配置文件的方法发送axios请求
    vue中 localStorage的使用方法(详解)
    下拉框 组件的使用
    遇到不懂的记录
    做测试平台可能会用到的东西
    下拉框 v-for循环拿值的方法
    ant 自定义遮罩
  • 原文地址:https://www.cnblogs.com/zl1216/p/10484430.html
Copyright © 2020-2023  润新知