no-unicode-literals

使用 from __future__ import unicode_literals 被认为是一种反模式。它存在的问题是

  • 它会导致无法在文件中随机跳到某个位置,并确定一个裸字面字符串是字节字符串还是文本字符串。程序员必须首先检查文件的顶部,以查看是否导入了该语句。

  • 它会删除通过字符串字面量定义原生字符串(在 python2 中应该是字节字符串,在 python3 中应该是文本字符串)的能力。

  • 它会增加上下文切换的次数。程序员可能会阅读一个包含 unicode_literals 的文件,并且知道裸字符串字面量是文本字符串,然后切换到另一个文件(可能是跟踪程序执行到第三方库),并且必须切换对裸字符串字面量的理解。