2

だからPythonでは、000Xの順番でファイルパスにアクセスしようとしています

だから私は文字列を設定することから始めます

path = '0001'

次に、ファイルパスをポイントして開きます

filepath = open('/home/pi/Pictures' + path + '.JPG', 'rb')

だから私は自分の仕事をしていて、拡張子0002の次のファイルにアクセスしたい

intpath = int(path)
intpath = intpath + 1
path = str(intpath)

これは非効率的だと確信していますが、私は始めています。残念ながら、これはパスを「0002」ではなく「2」にします....先頭のゼロを維持する方法はありますか?

4

4 に答える 4

3

このようなものを使用できます

>>> ['{0:04}'.format(i) for i in range(1, 15)]
['0001', '0002', '0003', '0004', '0005', '0006', '0007', '0008', '0009', 
 '0010', '0011', '0012', '0013', '0014']
于 2013-03-20T02:37:18.747 に答える
2

4 桁が必要であることがわかっている場合は、文字列の書式設定を使用します。

path = "%04d" % (intpath+1)
于 2013-03-20T02:37:58.170 に答える
0

私はおそらく他のいずれかを使用しますが、完全を期すために、次のものもありzfillます。

'1'.zfill(4)
于 2013-03-20T02:38:49.313 に答える
0

のもう 1 つの利点はstr.format、幅を簡単にパラメータ化できることです。Python が 2.5 以前の場合は、%フォーマットを使用する必要があります

>>> ['{i:0{width}}'.format(i=i, width=4) for i in range(1, 15)]
['0001', '0002', '0003', '0004', '0005', '0006', '0007', '0008', '0009', '0010', '0011', '0012', '0013', '0014']
于 2013-03-20T03:20:47.330 に答える