2

我有一个文本文件,我使用 Python 将其分成 10 行的部分。我试图用 4 位数字后缀而不是 1、2、3 等来拆分它们。例如,如果文件是filename.txt,那么文件必须拆分成,filepart-0000.txt,filepart-0001.txt等等。现在,如果我有:

后缀 = 0000

然后尝试将文件部分写入: open ("filepart-" + str(suffix),'w')

我仍然最终得到:filepart-0.txt、filepart-1.txt 等等。

如果我直接写: open ("filepart-" + suffix, 'w')

我(显然)最终得到'TypeError:无法连接'str'和'int'对象'有没有办法可以保留整个四位数的后缀?提前致谢。

4

1 回答 1

1

您可以尝试使用带有填充的字符串格式0,如下所示:

In [1]: '{:04}'.format(1)
Out[1]: '0001'

In [2]: '{:04}'.format(23)
Out[2]: '0023'

这个想法是,您可以像往常一样提供目标整数,但将它们作为参数传递给format,以便用 0 填充数字,使其至少包含 4 个数字。然后,您可以在文件名中使用该字符串。

In [3]: for i in xrange(1, 11):
   ...:     print 'filename-{:04}.txt'.format(i)
   ...:     
filename-0001.txt
filename-0002.txt
filename-0003.txt
filename-0004.txt
filename-0005.txt
filename-0006.txt
filename-0007.txt
filename-0008.txt
filename-0009.txt
filename-0010.txt
于 2013-04-06T01:58:44.140 回答