Newline改行をLFに揃えます。https://www.python.org/dev/peps/pep-0278/のことです。"rt"CR、LF、CRLFのいずれをもLFとして読み込む。"rb"CR、LF、CRLFはいずれもそのまま読み込まれる。"r""rt"と"rb"のどちらの扱いになるかはプラットフォーム依存。(Unix系ならばなら"rb"、mswinやmingwなら"rt"扱いとなる)"wb"LFはそのままLFとして書き込まれる。"w"LFはLFのままか、CR+LFか、どちらかになる。どちらになるかはプラットフォーム依存。(Unix系ならばLFのまま、mswinやmingwならばCRLFとなる)なお、以上のCR、LF、CRLFは入力のエンコーディングを解釈した後に処理されます。UTF-16LEでは、LFはバイト列"\x0a\x00"のことになります。エンコーディングの指定ext_enc(外部エンコーディング)が指定されている場合、読み込まれた文字列にはこのエンコーディングが指定され、出力する文字列はそのエンコーディングに変換されます。ext_encが'BOM|'で始まる場合、その入力に含まれるBOMはあらかじめ削られます。BOMがあった場合、入力された文字列にはそのBOMに対応するエンコーディングが設定されます。}int_encも指定されていた場合、入力された文字列をext_encでエンコーディングされた文字列とみなしてint_encへと変換し、その結果にint_encを設定して返します。デバッグに使用します。メソッドの返り値と改行を順番に出力します。以下のコードと同じです。...整形に用いられるObject#inspectは普通に文字列に変換すると区別がつかなくなるようなクラス間の差異も表現できるように工夫されています。引数を与えずに呼び出した場合は特に何もしません。arg:出力するオブジェクトを任意個指定します。IOError:標準出力が書き込み用にオープンされていなければ発生します。Errno::EXXX:出力に失敗した場合に発生します。複数の引数が指定された場合はそれらを要素とする配列を返します。標準出力に見やすい形式(プリティプリント)で出力します。