gpt4 book ai didi

python - 为什么我不能在带有格式说明符的 f 字符串表达式周围使用空格?

转载 作者:行者123 更新时间:2023-12-03 18:44:29 24 4
gpt4 key购买 nike

当我以类似的方式使用带有格式说明符的 f 字符串时

>>> x = 1
>>> f'{ x:02 }'

它给了我 ValueError: Unknown format code '\x20' for object of type 'int'。要解决此问题,我必须从 f 字符串表达式中删除周围的空格,例如 f'{x:02}'

为什么会这样?

最佳答案

给定一个 f 字符串表达式,例如 f'{ x:02 }',表达式的格式说明符部分开始并包括冒号后的所有字符 (:).这意味着 02 右侧的空格是格式说明符的一部分。尽管错误说了什么,如 Chris Rands 所说, 空格是有效的格式代码。导致错误的原因是我们对整数使用了无效的格式说明符。在 02 之后添加空格会使说明符无效。

我们可以解决这个问题

>>> f'{ x:02}'

它成功地让我 01。但是,我主观上不推荐 f 字符串表达式使用这种样式,因为它看起来不平衡,即最左边的空间在表达式的另一端没有配对空间。我不会改用任何周围的空格(例如 f'{x:02}')。


推荐阅读


编辑:我编辑了这个答案以提供正确的解释。在之前的编辑中,我错误地指出空格不是格式中的有效代码。谢谢 Chris 的更正。

关于python - 为什么我不能在带有格式说明符的 f 字符串表达式周围使用空格?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58696946/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com