2012-01-20 4 views
0
path = 'foo/{bar1,bar2}' 

bash 쉘처럼 [ 'foo/bar1', 'foo/bar2']로 확장하는 방법은 무엇입니까? 내가 글로브를 시도 했어. 오케이. 현실 경로. 그리고 나 역시 시끄러운 곳에서 아무것도 보지 못해.파이썬에서 쉘 경로 표현 확장하기

답변

2

)

 
paths = subprocess.check_output('bash -c "echo foo/{bar1,bar2}"', shell=True).split() 
+0

그래, 좋은 간단한 아이디어. 이것은 아마도 내장 된 shutil 타입의 것이없는 한 실제로는 가장 좋은 방법 일 것입니다. – mathtick

+0

원본에 'some {foo1, foo2}/bar'와 같이 공백이 있으면 작동하지 않습니다. – nosklo

+0

아 맞습니다. 공백은 엉망이 될 것입니다. 나는 그것을 고치는 좋은 방법을 생각할 수 없다 - 당신은 그 공간을 벗어날 수 있었지만, 그때 나누는 것은 잘못된 아이템을 얻는다. 아마도 마커로 바꾸고 (예를 들어 정상적으로 나타나지 않는다면 _처럼) 마친 후 바꿔 넣으십시오. – Glenn

0

기본 제공 방법이 없습니다. 요소를 추출하려면 구문 분석 코드를 작성해야합니다. 당신은 당신을 위해 그것을 할 수 떠들썩한 파티를 얻을 수

관련 문제