2016-08-01 5 views
0

파이썬의 함수에 윈도우 경로를 전달할 때 문제가 있습니다. 이제 경로를 하드 코딩하면 모든 것이 실제로 작동합니다. 그래서, 내 코드입니다 : 나는 하드 코딩 된 문자열에 서식 원시 문자열을 사용하고 같은이 작품을 잘파이썬에서 공백이있는 Windows 경로

from pymatbridge import Matlab 
lab = Matlab(executable=r'"c:\Program Files \MATLAB\bin\matlab.exe"') 
lab.start() 

. 이제 문제는 문자열이 변수로 전달된다는 것입니다. 그래서, 내가 같은 변수를 상상해 :

지금, 이에 상응하는 원시 문자열을 얻는 방법을 알아낼 수 없습니다. 나는 shlex.quote(path)과 같은 것을 시도했는데 이것은 \b과 관련이있다. 원시 문자열로 변환하지 않으면 Program Files의 공백이 문제가되는 것 같습니다.

+1

시도 사이의 공간 문제에 직면하는 경우 "\\"대신 "\" – Abhineet

+0

사용'/'대신에의 파이썬 또한'path = r'c : \ Program Files \ MATLAB \ bin \ matlab.exe '를 지정하여 원시 문자열을 사용할 수 있습니다. – shivsn

+0

'r'c : \ Program Files \ MATLAB \ bin \ matlab.exe '를 사용하여'''또는'''를 제거하십시오. –

답변

0
def testpath(path): 
    print path 

testpath(path='c:\\Program Files \\MATLAB\\bin\\matlab.exe') 

출력은 다음과 같습니다

c:\Program Files \MATLAB\bin\matlab.exe 

당신이 Program Files 사용 Progra~1 대신

관련 문제