在Python中将int转换为字符串

pyt*_*nTA 46 python string integer concatenation

我希望能够生成一些名为fileX.txt的文本文件,其中X是一个整数:

for i in range(key):
    filename = "ME" + i + ".txt" //Error here! Can't concat a string and int
    filenum = filename
    filenum = open(filename , 'w')  
Run Code Online (Sandbox Code Playgroud)

有没有其他人知道如何做文件名="我"+我的部分,所以我得到一个名称为"ME0.txt","ME1.txt","ME2.txt"等文件的列表

Fer*_*yer 19

对于2.6之前的Python版本,请使用字符串格式化运算符%:

filename = "ME%d.txt" % i
Run Code Online (Sandbox Code Playgroud)

对于2.6及更高版本,请使用以下str.format()方法:

filename = "ME{0}.txt".format(i)
Run Code Online (Sandbox Code Playgroud)

虽然第一个例子仍然适用于2.6,但第二个例子是首选.

如果以这种方式命名的文件超过10个,则可能需要添加前导零,以便在目录列表中正确排序文件:

filename = "ME%02d.txt" % i
filename = "ME{0:02d}.txt".format(i)
Run Code Online (Sandbox Code Playgroud)

这将产生的文件名称,如ME00.txtME99.txt.如需更多数字,请将2示例中的数字替换为更高的数字(例如ME{0:03d}.txt).


Fré*_*idi 5

或者:

"ME" + str(i)
Run Code Online (Sandbox Code Playgroud)

要么:

"ME%d" % i
Run Code Online (Sandbox Code Playgroud)

第二个通常是首选,特别是如果你想从几个标记构建一个字符串.