zoukankan      html  css  js  c++  java
  • 【11】python模块:xpinyin(拼音)、hashlib(加密)

    1、下载安装模块

    cmd下执行命令下载安装:pip install xpinyin

    cmd下执行命令下载安装:pip install hashlib

    2、xpinyin模块(拼音)

    from xpinyin import Pinyin
    
    p = Pinyin()
    
    res = p.get_pinyin("上海")
    #'shang-hai'
    
    res = p.get_pinyin("上海","")#默认用-连接拼音,所以我们在后面加上了''
    #'shanghai'
    
    res = p.get_pinyin("上海", ' ')
    # 'shang hai'
    
    res = p.get_pinyin(u"上海", show_tone_marks=True)
    # 'shàng-hǎi'
    
    res = p.get_initial("")
    # 'S'
    
    res = p.get_initials("上海")
    # 'S-H'
    
    res = p.get_initials("上海", '')
    # 'SH'
    
    res = p.get_initials("上海", ' ')
    # 'S H'
    
    print(res)

     

    3、hashlib模块(加密)

    hashlib模块,主要用于加密相关的操作,在python3的版本里,代替了md5和sha模块,主要提供 SHA1, SHA224, SHA256, SHA384, SHA512 ,MD5 算法。
    以上几种加密方式的区别为密码长度。md5不能反解,但是加密是固定的,就是关系是一一对应,所以有缺陷,可以被对撞出来

    import hashlib
    
    password='123123'
    # password.encode()#转成二进制类型的才可以加密
    m = hashlib.md5(password.encode()) #md5加密   <md5 HASH object @ 0x104060670>
    print(m.hexdigest())#将转成二进制后的字符串加密   4297f44b13955235245b2497399d7a93

    4、小练习

    写一个加密的函数,并加盐,加盐的意思是在密码后面加一个字符串

    def my_md5(s:str,salt=None):
        #salt是盐值
        s = str(s)#先转成字符串
    
        if salt:#如果传入的有盐值
            s = s+salt
        m = hashlib.md5(s.encode())#先转成二进制
        return m.hexdigest()
  • 相关阅读:
    【BNUOJ 4358】 左手定则
    【NOIP】关押罪犯
    【数算A】表达式·表达式树·表达式求值
    【POJ1679】The Unique MST
    【数算A】舰队、海域出击!
    【NOI2014】动物园
    【POJ1308】&&【HDU1272】Is It A Tree && 小希的迷宫
    【NOI2002】银河英雄传说
    html5之本地存储localStorage示例
    html5之应用缓存示例
  • 原文地址:https://www.cnblogs.com/haifeima/p/9725226.html
Copyright © 2011-2022 走看看