format-literals (UP030)
源自 pyupgrade linter。
有时提供修复。
作用
检查格式化字符串中不必要的位置索引。
为什么这不好?
在 Python 3.1 及更高版本中,格式化字符串可以使用隐式位置引用。例如,"{0}, {1}".format("Hello", "World")
可以重写为 "{}, {}".format("Hello", "World")
。
如果位置索引完全按顺序出现,则可以省略它们,以支持自动索引,从而提高可读性。
示例
建议改为
此修复被标记为不安全,因为
- 附加到参数的注释不会被移动,这可能导致注释与实际参数不匹配。
- 如果参数具有副作用(例如,print),则重新排序可能会改变程序的行为。