我有一个很长的功能,如下所示:
hash_correct = hashlib.md5(salt + password)).digest().encode("base64")
我想将它分成两行,但不确定在 Python 中执行此操作的正确方法?
谢谢。
限制行长的编码指南在一定程度上是为了使代码更具可读性。在您的链接方法调用的情况下,含义不清楚。您应该为中间值选择一些临时变量名称,以便代码读者可以轻松理解链。
一个例子可能是:
safe_md5 = hashlib.md5(salt + password)
crypto_hash = safe_md5.digest()
hash_correct = crypto_hash.encode('base64')
这将引导读者走上理解的花园之路。性能损失很少,并且所有附加代码都是有目的的。
更喜欢查尔斯梅拉姆的回答,但我认为这值得注意,因为它有效但丑陋并且气馁。因为 '。' 是一个词法分隔符,以下工作:
>>> 'abc def' . split()
['abc', 'def']
>>> 'abc def' . \
... split()
['abc', 'def']
>>> sys.version
'2.6.4 (r264:75706, Dec 7 2009, 18:45:15) \n[GCC 4.4.1]'
但不要那样做。