首页 > 解决方案 > ValueError:索引 7 处不支持的格式字符“p”(0x70)

问题描述

我正在尝试通过使用循环来格式化字符串文件名这是我的代码

for i in range(1, 16):
    bgImageFile = ("bg_%01.png" %i)

标签: pythonstringpython-3.xstring-formatting

解决方案


语法需要%d(或%s),而不仅仅是%

for i in range(1, 4):
    bgImageFile = 'bg_%s01.png'%i
    print(bgImageFile)

bg_101.png
bg_201.png
bg_301.png

使用 Python 3.6+,您可以使用 f-strings ( PEP498 ):

for i in range(1, 4):
    bgImageFile = f'bg_{i}01.png'

您应该知道的一些说明符(来源):

%s- 字符串(或任何具有字符串表示的对象,如数字)

%d- 整数

%f- 浮点数字

%.<number of digits>f- 点右侧具有固定位数的浮点数。

%x/%X- 十六进制表示的整数(小写/大写)


推荐阅读