相关疑难解决方法(0)

Python TypeError:传递给object .__ format__的非空格式字符串

我最近遇到了这个TypeError异常,我发现很难调试.我最终将它减少到这个小测试用例:

>>> "{:20}".format(b"hi")
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: non-empty format string passed to object.__format__
Run Code Online (Sandbox Code Playgroud)

无论如何,这对我来说非常不明显.我的代码的解决方法是将字节字符串解码为unicode:

 >>> "{:20}".format(b"hi".decode("ascii"))
 'hi                  '
Run Code Online (Sandbox Code Playgroud)

这个例外是什么意思?有没有办法让它更清晰?

python string-formatting python-3.x

74
推荐指数
2
解决办法
6万
查看次数

标签 统计

python ×1

python-3.x ×1

string-formatting ×1