舍侠 发表于 2022-5-2 15:51:46

38讲动动手1

hashlib.md5() 里面的参数只能是字符串吗??可不可以是变量呢?比如hashlib.md5(b(a))

wp231957 发表于 2022-5-2 15:55:20

这是肯定可以的
你有啥疑问?

isdkz 发表于 2022-5-2 15:55:45

本帖最后由 isdkz 于 2022-5-2 15:57 编辑

>>> help(hashlib.md5)
Help on built-in function openssl_md5 in module _hashlib:

openssl_md5(string=b'', *, usedforsecurity=True)
    Returns a md5 hash object; optionally initialized with a string

>>>

可以看到 hashlib.md5 的第一个参数只能是字节串,不是字符串,

只要你传进的变量存的值或者函数调用的返回值是字节串就可以

舍侠 发表于 2022-5-2 16:09:44

isdkz 发表于 2022-5-2 15:55
可以看到 hashlib.md5 的第一个参数只能是字节串,不是字符串,

只要你传进的变量存的值或者函数调 ...

怎么把变量存的值变成字符串了?

舍侠 发表于 2022-5-2 16:10:54

wp231957 发表于 2022-5-2 15:55
这是肯定可以的
你有啥疑问?

就是38讲动动手1 让给上一道题加密了,这不是不会么,上一道题的值不知道该怎么放入参数里

isdkz 发表于 2022-5-2 16:13:59

本帖最后由 isdkz 于 2022-5-2 16:17 编辑

舍侠 发表于 2022-5-2 16:09
怎么把变量存的值变成字符串了?

a = b'test'                  # 在字符串前面加个 b 就是字节串
b = 'test'.encode()         # 使用字符串的 encode 方法编码成字节串

# 使用内置函数 bytes 将一个对象转成字节串
c = bytes('test', encoding='ascii')
d = bytes()
页: [1]
查看完整版本: 38讲动动手1