특정 조건이 충족 될 때까지 다음 출력을 얻으려고합니다. 내가 가진 그 그러나 문자열의 증가 숫자
fileCount = 0
while (os.path.exists(dstPath)):
fileCount += 1
parts = os.path.splitext(dstPath)
dstPath = "%s_%d%s" % (parts[0], fileCount, parts[1])
이다 (당신이 원격으로 호출 할 수있는 경우)
test_1.jpg test_2.jpg .. test_50.jpg
해결책은 ...이 다음과 같은 출력을 생성합니다.
test_1.jpg test_1_2.jpg test_1_2_3.jpg .....etc
질문 : 현재 위치의 번호를 변경하려면 어떻게합니까 (끝에 숫자를 추가하지 않고)?
ps. 나는 이것을 파일 이름 바꾸기 도구에 사용하고있다.
UPDATE : 아래 다양한 아이디어를 사용하여, 내가
dstPathfmt = "%s_%d%s"
parts = os.path.splitext(dstPath)
fileCount = 0
while (os.path.exists(dstPath)):
fileCount += 1
dstPath = parts[0]+"_%d"%fileCount+parts[1]
매우 흥미로운 아이디어 ... 그러나 파일 이름의 일부를 변경하여 원본을 반영 할 수있는 유연성이 필요합니다. 그러나 위의 알고리즘을 변경하여 아래에 답변과 답변을 약간 포함 시켰습니다. 해주기 dstPathfmt가 = "S_ % D % % S" 부품 = os.path.splitext (dstPath) fileCounter = 0 인 첫 번째 파일 "test.jpg를" 동안 (을 os.path 일치 #됐다. dstPath = part [0] + "_ % d"% fileCount + parts [1] – iform