Pythonでこれを行う方法についての手がかりがありません。問題は次のとおりです。たとえば、次のような注文番号があります。
1
2
...
234567
注文番号の最後の 4 桁のみを抽出する必要があり、注文番号が 4 桁未満の場合はゼロに置き換えます。
必要な出力は次のようになります。
0001
0002
...
4567
手がかりはありますか?私はこれで少し迷っています。
よろしくお願いします、
Pythonでこれを行う方法についての手がかりがありません。問題は次のとおりです。たとえば、次のような注文番号があります。
1
2
...
234567
注文番号の最後の 4 桁のみを抽出する必要があり、注文番号が 4 桁未満の場合はゼロに置き換えます。
必要な出力は次のようになります。
0001
0002
...
4567
手がかりはありますか?私はこれで少し迷っています。
よろしくお願いします、
これを試して:
>>> n = 234567
>>> ("%04d"%n)[-4:]
'4567'
説明 (ドキュメント):
"%04d"%n --> get a string from the (d)ecimal n, putting leading 0s to reach 4 digits (if needed)
ただし、この操作ではすべての数字が保持されます。
>>> n = 7
>>> "%04d"%n
'0007'
>>> n = 234567
>>> "%04d"%n
'234567'
したがって、最後の 4 桁が必要な場合は、位置 -4 から文字を取ります (つまり、右から 4 文字。「スライス表記」を扱う場合はこちらを参照してください)。
>>> n = 234567
>>> ("%04d"%n)[-4:]
'4567'
次のようなもの:
>>> test = [1, 234567]
>>> for num in test:
last4 = str(num)[-4:]
print last4.zfill(4)
0001
4567