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


    1.字符串操作:

    • 解析身份证号:生日、性别、出生地等。
    • 凯撒密码编码与解码
    • 网址观察与批量生成
    ID = input('请输入十八位身份证号码: ')
    if len(ID) == 18:
        print("你的身份证号码是 " + ID)
    else:
        print("错误的身份证号码")
    
    ID_add = ID[0:6]
    ID_birth = ID[6:14]
    ID_sex = ID[14:17]
    ID_check = ID[17]
    
    # ID_add是身份证中的区域代码,如果有一个行政区划代码字典,就可以用获取大致地址#
    
    year = ID_birth[0:4]
    moon = ID_birth[4:6]
    day = ID_birth[6:8]
    print("生日: " + year + '年' + moon + '月' + day + '日')
    province=ID[0:2]
    city = ID[2:4]
    county = ID[4:6]
    print("你的出生地为:{}省{}市{}县".format(province,city,county))
    
    
    if int(ID_sex) % 2 == 0:
        print('性别:女')
    else:
        print('性别:男')
    
    # 此部分应为错误判断,如果错误就不应有上面的输出,如何实现?#
    W = [7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2]
    ID_num = [18, 17, 16, 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2]
    ID_CHECK = ['1', '0', 'X', '9', '8', '7', '6', '5', '4', '3', '2']
    ID_aXw = 0
    for i in range(len(W)):
        ID_aXw = ID_aXw + int(ID[i]) * W[i]
    
    ID_Check = ID_aXw % 11
    if ID_check == ID_CHECK[ID_Check]:
        print('正确的身份证号码')
    else:
        print('错误的身份证号码')
    

      

    import  os
    def encryption():
        str_raw = input("请输入明文:")
        k = int(input("请输入位移值:"))
        str_change = str_raw.lower()
        str_list = list(str_change)
        str_list_encry = str_list
        i = 0
        while i < len(str_list):
            if ord(str_list[i]) < 123-k:
                str_list_encry[i] = chr(ord(str_list[i]) + k)
            else:
                str_list_encry[i] = chr(ord(str_list[i]) + k - 26)
            i = i+1
        print ("加密结果为:"+"".join(str_list_encry))
    def decryption():
        str_raw = input("请输入密文:")
        k = int(input("请输入位移值:"))
        str_change = str_raw.lower()
        str_list = list(str_change)
        str_list_decry = str_list
        i = 0
        while i < len(str_list):
            if ord(str_list[i]) >= 97+k:
                str_list_decry[i] = chr(ord(str_list[i]) - k)
            else:
                str_list_decry[i] = chr(ord(str_list[i]) + 26 - k)
            i = i+1
        print ("解密结果为:"+"".join(str_list_decry))
    while True:
        print (u"1. 加密")
        print (u"2. 解密")
        choice = input("请选择:")
        if choice == "1":
            encryption()
        elif choice == "2":
            decryption()
        else:
            print (u"您的输入有误!")

     

    网址观察与批量生成

    import webbrowser as web
    url = 'https://www.huya.com/g/lol'
    web.open_new_tab(url)
    for i in range(2, 4):
        web.open_new_tab('https://www.huya.com/g/lol'+str(i)+'.html')
    for i in range(2, 10):
       url = 'https://www.huya.com/g/lol{}.html'.format(i)
       print (url)
    

      

     

    2.英文词频统计预处理

    article ='''
    It is said that the true nature of being is veiled. The labor of words, 
    the expression of art, the seemingly ceaseless buzz that is human thought all have in common the need to get at what really is so. 
    The hope to draw close to and possess the truth of being can be a feverish one. 
    In some cases it can even be fatal, 
    if pleasure is one's truth and its attainment more important than life itself. 
    In other lives, though, the search for what is truthful gives life.
    '''
    
    split = article.split()
    print(split)
    
    #使用空格替换标点符号
    article = article.replace(",","").replace(".","").replace(":","").replace(";","").replace("?","")
    
    
    #大写字母转换成小写字母
    exchange = article.lower();
    print(exchange)
    
    #生成单词列表
    list = exchange.split()
    print(list)
    
    #生成词频统计
    dic = {}
    for i in list:
        count = list.count(i)
        dic[i] = count
    print(dic)
    

      

    3

    • 同一目录、绝对路径、相对路径
    • 凯撒密码:从文件读入密函,进行加密或解密,保存到文件。
    • 词频统计:下载一首英文的歌词或文章或小说,保存为utf8文件。从文件读入文本进行处理。
    file=open("1.txt",'r')
    text=file.read();
    file.close;
    cip = '';
    for i in text:
      cip += chr(ord(i)+6)
    print("明文加密后为:",cip)
    file=open("2.txt",'w')
    file.write(cip);
    file.close()
    

      

    4.函数定义

    对函数定义的还比较模糊,不能完成代码,希望在今后的课程中能好好理解。

  • 相关阅读:
    BZOJ1568:[JSOI2008]Blue Mary开公司
    HDU4348:To the moon
    洛谷【P3437】[POI2006]TET-Tetris 3D
    AtCoder Regular Contest 072 E:Alice in linear land
    AtCoder Grand Contest 014 D:Black and White Tree
    洛谷【P2664】树上游戏
    浅谈树分治
    BZOJ3784:树上的路径
    BZOJ2006:[NOI2010]超级钢琴
    BZOJ3648:寝室管理
  • 原文地址:https://www.cnblogs.com/lenkay/p/10508338.html
Copyright © 2020-2023  润新知