「ZedShawのLearnPythonTheHardWay」に追加のクレジットを付けています。演習15の「追加クレジット」では、pydocファイルを読んで、ファイルで実行できる他のことを見つけるように指示されています。「read()」を使用して、端末にテキストファイルの特定のバイト数を出力させる方法を理解することに興味がありました。読み取るバイト数の引数をハードコーディングすることはできますが、ユーザーにバイト数を定義するように求めるときに壁にぶつかりました。
これまでのスクリプトは次のとおりです。
from sys import argv
script, filename = argv
txt = open(filename)
print "Here's 24 bytes of your file %r:" % filename
print txt.read(24)
print """What about an arbitrary, not hard-coded number of bytes? Enter the number
of bytes you want read out of the txt file at this prompt, as an integer:"""
how_far = raw_input("> ")
print txt.read(how_far2) # this format makes sense in my head but obviously isn't the done thing.
ターミナルはエラーを吐き出します:
"NameError: name 'how_far2' is not defined"
スクリプトのユーザーにバイト数を入力するように促し、スクリプトにそのバイト数を読み取らせるにはどうすればよいですか?
ボーナス質問:
- 私がここでやろうとしていることの実際の用語は何ですか?変数をメソッドに渡しますか?変数を関数に渡しますか?
- バイト数は読み取りの引数ですか?それは正しい用語ですか?
- より一般的には、Python用語の語彙リストを取得するのに適した場所はどこですか?Stack Overflowが推奨する他の本、またはどこかのオンラインドキュメントにある本はありますか?前提条件や事前知識がなく、「私が5歳のように説明してください」というレベルの粒度を本当に探しています...30分のWeb検索はあまり役に立ちませんでした。Webを検索するのにかなりの労力を費やしたにもかかわらず、オンラインで用語が実際に1か所に集められていることはわかりません。