MD5Python中未将文件名指定给变量的文件的总和

MD5Python中未将文件名指定给变量的文件的总和,python,ubuntu,md5sum,Python,Ubuntu,Md5sum,我试图将文件的md5总和(在ubuntu中)分配给python脚本中的变量(any),如下所示 aList=subprocess.check_output(["md5sum",filename]) 我只想为我在下面代码中使用的变量赋值sum,但它不起作用 aList=subprocess.check_output(["md5sum",filename," | awk '{print $1}'"]) 请帮我找出解决办法 提前感谢使用Python的内置实现,而不是执行md5sum: import

我试图将文件的md5总和(在ubuntu中)分配给python脚本中的变量(any),如下所示

aList=subprocess.check_output(["md5sum",filename])
我只想为我在下面代码中使用的变量赋值sum,但它不起作用

aList=subprocess.check_output(["md5sum",filename," | awk '{print $1}'"])
请帮我找出解决办法


提前感谢

使用Python的内置实现,而不是执行md5sum:

import hashlib

with open(filename, 'rb') as f:
    hexdigest = hashlib.md5(f.read()).hexdigest()
    print(hexdigest)

aList=subprocess.check_output(['md5sum',filename]).decode().partition(''[0]
work?考虑一下,它讨论了调用
subprocess
方法时的管道,还考虑使用Python库而不是使用
md5sum
命令。感谢Jon Clements,它起作用了。