2011-11-17 4 views
1

Learn Python The Hard Way을 사용하여 파이썬을 배우고 있습니다. 그것은 매우 훌륭하고 효율적입니다. 그러나 어느 순간 나는 사고가났습니다. 웹을 검색했지만 답변을 찾을 수 없습니다. 여기 내 질문 : 운동의argv를 사용할 때의 에러

하나는이해야 할 말 :

from sys import argv 

script, filename = argv 

을 한 후 내가 이해 할 일 일에 진행 : 첫 번째 부분은 무엇

print "we are going to erase %r." % filename 
print "if you don't want that, hit CTRL-C (^C)." 
print "if you do want that, hit RETURN." 

raw_input("?") 

print "opening the file..." 
target = open(filename, 'w') 

을 평균?

P. 내가 오류는 다음과 같습니다

구문 에러 예기치 않은 문자 줄 연속 문자

+1

전체 오류 메시지를 입력하십시오. – skayred

답변

2
script, filename = argv 

후이 unpacking the sequenceargv입니다. 첫 번째 요소는 script이되고 두 번째 요소는 filename이됩니다. 일반적으로, 오른쪽에있는 iterable의 항목만큼 왼쪽에 정확히 많은 변수가있는 한 반복 가능한 모든 iterable을 사용하여 수행 할 수 있습니다.

표시되는 코드는 정상적으로 보입니다. 거기에 구문 오류가 나타나는 이유를 모르겠습니다.

+0

정확히 유일한 문제는 사용자가 잘못되었다는 것입니다. 나는 당신이 거기에서 말한 내용을 대본에 쓰는 것으로 해석했습니다. 완전히 잘못된 것. 명령 줄에 써야했습니다. 도와 주셔서 고맙습니다. –

1

Unexpected character after line continuation character은 연속 문자 \ (this question 참조)을 사용하여 두 줄로 명령을 분할했지만 그 뒤에 몇 개의 문자 (예 : 공백)를 추가했음을 의미합니다.

하지만 코드에서 어떤 \ 표시되지 않습니다 ...

1

코드 작동 미세의 codefile.py의 예에서 코드를 넣어 그것에 dummydata 파일을 전달합니다

$ python codefile.py dummydatafile.txt 
We're going to erase 'test1.txt'. 
If you don't want that, hit CTRL-C (^C). 
If you do want that, hit RETURN. 
? 
Opening the file... 
Truncating the file. Goodbye! 
Now I'm going to ask you for three lines. 
line 1: 
line 2: 
line 3: 
I'm going to write these to the file. 
And finally, we close it. 
$ 

이것은 문제를 해결할 것입니다