2012-03-23 7 views
0

저는 방금 전에 파이썬에 들어갔고 지금은 연습하고 있습니다 (다소 단순한 것으로 상상할 수 있지만 충분히 도전적입니다). 파일을 폴더로 정렬하는 작은 도구를 만듭니다. .구분 기호의 첫 번째 발생으로 문자열 분리

지금까지 꽤 잘 진행되었지만, 지금은 문제가 발생했습니다

내 파일은 다음 형식으로되어 있습니다 : myAsset_prefix1_prefix2_prettyName.ext을; (즉, Tiger_texture_spec_brightOrange.png)

myAsset은 이름에 따라 다르므로 항상 길이가 다릅니다.

같은 자산의 모든 파일 ("myAsset_"태그)을 별도의 폴더에 정렬하려고합니다.

별도의 폴더에 복사하는 등의 작업이 필요 없습니다. 새 저작물을 만들거나받을 때마다 수동으로 배열을 업데이트하고 싶지 않습니다. 따라서 startswith 작업을 사용하는 대신 목록을 통해 실행하게하려면 스크립트의 파일 이름을보고 모든 것을 저장하고 첫 번째 " _ "변수/배열.

그럴 수 있습니까?

+2

당신이 제목이 질문에 어떻게 연관되는지를 명확히 주시겠습니까? –

+2

그것은 모두 "asset_tag = filename.split ('_') [0]" – j13r

+0

으로 시작됩니다. 다른 q i ddnt 게시물에서 저장되었습니다 : S 죄송합니다! –

답변

1

나는 glob 모듈을 원한다고 생각합니다. 이렇게하면 특정 형식과 일치하는 파일을 나열 할 수 있습니다. 예를 들어

:

for filename in glob.glob(*.ext): 
    asset_tag = filename.split(" ")[0] 
+0

실제로 내가 찾고 있던 것은. 조각 작업 : D 사실 내가 필요한 것을 수행합니다. 고마워! : D –

+0

'str.partition()'은'str.split()'과 비슷하지만 선택한 구분 기호가 처음 나오는 부분 만 분할합니다. –

+0

기록! 추가 정보 Thx! :) –