2014-07-11 4 views
1

콘솔을 통해 내 파이썬에 url을 전달하고 적절한 작업을 수행하고 싶습니다. 많은 링크가 '&'문자를 링크에 포함합니다. 파이썬은 인수를 끝내는 것으로 해석하지만 이것은 내가 원하는 것이 아닙니다. 여기에 코드파이썬 시스템 인수 읽기 '&'

import sys 

external_id = sys.argv[1].encode("utf-8") 
print external_id 

내가 실행할 때 다음의 샘플입니다

python graph.py 2%60&7 

내가 얻을 : 어떻게

2%60 

내가 파이썬은 아무것도로 '&'을 해석하기 URL에있는 다른 캐릭터보다 더 많습니까?

+2

앞에 이스케이프 문자를 내 보냅니다. '\ &' – scohe001

+0

이런 문제는 터미널 문제만큼 파이썬 문제가 아닙니다. – BlackVegetable

+0

쉘이 'bash : 7 : command not found'와 같은 작은 오류 메시지를 표시했다는 사실을 놓쳤을 것입니다. 그건 큰 단서 였어;) –

답변

5

this answer을 인용 :

&

백그라운드에서 명령을 넣어 쉘을 알려줍니다.

파이썬은 쉘이 처리하기 때문에 그 문자를 수신하지 않으므로 파이썬의 문제는 아닙니다. 당신은 또한

[email protected]:~$ python3 script.py '2%60&7' 
b'2%60&7' 

때때로 &을 탈출하는 것은이 일보다 훨씬 어렵 작동하도록 따옴표와 함께 2%60&7 포장 할 수 있습니다.

6

이것은 파이썬이 아니며 bash입니다. 당신은 그것을 탈출해야합니다

python graph.py 2%60\&7