Python基础——os模块(二)

Python基础——os模块

make_dir(_dir):

def make_dir(_dir):
    if os.path.exists(_dir):
        return True
    try:
        os.makedirs(_dir)
        return True
    except:
        return False

os.urandom(n) 的使用

Return a string of n random bytes suitable for cryptographic use.

随机产生n个字节的字符串,可以作为随机**加密**key使用~

我们就简单举一个它在异或密码中的应用,详见 逻辑代数。

from os import urandom
def genkey(n):
    return urandom(n).decode('gbk', 'ignore')
def o(x):
    return ord(x) if isinstance(x, str) else x
def xor_strings(s1, s2):
    return ''.join(chr(o(i)^o(j)) for i, j in zip(s1, s2))
if __name__ == '__main__':
    message = "This is a secret message"
    key = genkey(len(message))
    crypted = xor_strings(message, key)
    print(xor_strings(crypted, key))

References

[1] os.urandom(n)

你可能感兴趣的:(Python基础——os模块(二))