1

Learn Python TheHardWayを使用してPythonを学習しています。それは非常に良くて効率的ですが、ある時点で私は墜落しました。Webを検索しましたが、答えが見つかりませんでした。これが私の質問です:

演習の1つは、これを行うように指示しています。

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')

最初の部分はどういう意味ですか?

PS私が得るエラーは次のとおりです。

SyntaxError行継続文字の後の予期しない文字

4

3 に答える 3

2
script, filename = argv

これはシーケンスをアンパックしています argv。最初の要素は に入りscript、2 番目の要素は に入りfilenameます。一般に、これは、右側の iterable 内のアイテムとまったく同じ数の変数が左側にある限り、任意の iterable で実行できます。

あなたが示すコードは問題ないようですが、構文エラーが発生する理由がわかりません。

于 2011-11-17T09:53:04.360 に答える
1

Unexpected character after line continuation characterは、継続文字\(この質問を参照) を使用してコマンドを 2 行に分割し、その後にいくつかの文字 (空白など) を追加したことを意味します。

\しかし、あなたのコードには何も表示されません...

于 2011-11-17T09:56:16.963 に答える
1

コードは正常に動作し、例のコードを codefile.py に入れ、ダミーデータ ファイルを渡します。

$ 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.
$

これで問題が解決するはずです

于 2011-11-17T10:12:37.123 に答える