ブログトップ 記事一覧 ログイン 無料ブログ開設

試験運用中なLinux備忘録 RSSフィード

2010/10/08 (Fri)

バージョン2.6/3.0系以上のPythonにおけるprint()関数に関するメモ(前半)

バージョン2系までのPythonでは端末の標準出力や標準エラー出力に改行付きでデータを表示する(書き出す)のにprint文を用いて

(標準出力への書き出し)
print [文字列]

(標準エラー出力への書き出し)
import sys
print >> sys.stderr, [文字列]

のようにしていたが、バージョン3系ではこのprint文という文法は廃止されてprint()という関数を用いるようになっている。

書式

簡単な出力

旧バージョンのprint文を置き換える使い方としては下のようになる。

(標準出力への書き出し)
print([文字列])

(標準エラー出力への書き出し)
import sys
print([文字列], file=sys.stderr)

キーワード引数fileは標準エラー出力のときにsys.stderrを指定する(別途sysモジュールのimport処理が必要)が、ここには文字列の引数を1つ取るwrite()というメンバ関数を持つオブジェクトであれば他のものを入れることもできる。

複数の文字列や値を連結

print()関数は複数の引数(型は混合可)を受け取ってそれを特定の文字で区切って連結して出力することができる。その際の区切り文字列はキーワード引数sepで指定できる。

>>> print (1, '2', 3.0, sep=' and ')                                            
1 and 2 and 3.0
最後の改行を変更する

出力の最後に改行を付けたくなければキーワード引数end(既定値は「\n」)を空白に書き換える。他の文字列にしたければそのようにendの値を指定する。

>>> print ('ABCD', end=''); print ('EFG')
ABCDEFG

この例では「ABCD」の後ろに改行が付かずに次の「EFG」が続いている。

(「バージョン2.6/3.0系以上のPythonにおけるprint()関数に関するメモ(後半)」に続く)

関連記事:

使用したバージョン:

  • Python 2.6.5, 3.1.2

投稿したコメントは管理者が承認するまで公開されません。

スパム対策のためのダミーです。もし見えても何も入力しないでください
ゲスト


画像認証

トラックバック - http://d.hatena.ne.jp/kakurasan/20101008/p1
リンク元
カスタム検索

カテゴリ「メールマガジン」を除いた本ウェブログ上の文章は、クリエイティブ・コモンズ・ライセンス(表示-非営利-継承 2.1 日本)の下でライセンスされています(引用・転載されたものを除く)。
Creative Commons License

本ウェブログの表示につきましては、横幅1,000ピクセル以上を推奨します。
はじめに | お知らせ | 最新の記事 | 記事一覧 | プライバシーポリシー | 別館トップ | まとめドキュメント | ご意見・ご要望