Python print()で改行なし出力:endパラメータとその他のテクニック
Python print()で改行なし出力:endパラメータとその他のテクニック
組み込みprint()関数はPythonで出力を表示する主要な手段です。デフォルトでは各呼び出し後に改行(\n)が追加されるため、後続のprintは新しい行に表示されます。
デフォルトのprint()の動作
print("Hello World")
print("Welcome to Guru99 Tutorials")
出力:
Hello World Welcome to Guru99 Tutorials
各文字列が別々の行に表示されるのは、print()が自動的に改行文字を追加するためです。
Python 3+での改行抑制
Python 3でprint()にendキーワード引数が導入されました。end=""を設定するとデフォルトの改行が除去され、同じ行に継続出力できます。
print("Hello World ", end="")
print("Welcome to Guru99 Tutorials")
出力:
Hello World Welcome to Guru99 Tutorials
区切り文字(スペース、カンマ、カスタム文字列)を入れる場合はendの値として指定:
print("Hello World ", end=" ")
print("Welcome to Guru99 Tutorials")
出力:
Hello World Welcome to Guru99 Tutorials
print("Hello World ", end="It's a nice day! ")
print("Welcome to Guru99 Tutorials")
出力:
Hello World It's a nice day! Welcome to Guru99 Tutorials
Python 2.x – カンマトリック
Python 2では文字列の後にカンマを付けると改行を防止:
print "Hello World ", print "Welcome to Guru99 Tutorials."
出力:
Hello World Welcome to Guru99 Tutorials
sysモジュールの使用
sysモジュールのstdout.write()で、自動改行なしの細かな出力制御が可能:
import sys
sys.stdout.write("Hello World ")
sys.stdout.write("Welcome to Guru99 Tutorials")
出力:
Hello World Welcome to Guru99 Tutorials
リストを1行で出力
リスト反復時にend=" "で全アイテムを同一行に:
mylist = ["PHP", "JAVA", "C++", "C", "PYTHON"]
for i in mylist:
print(i, end=" ")
出力:
PHP JAVA C++ C PYTHON
連続した星パターンの出力
ループでend=""を使って1行の文字列生成:
for i in range(20):
print('*', end="")
出力:
********************
重要なポイント
- Pythonの
print()はデフォルトで改行を追加 - 改行抑制には
end=""(Python 3+)または末尾カンマ(Python 2)を使用 sys.stdout.write()メソッドは完全な制御が必要な場合の代替手段- コレクション出力時、
end=" "で要素をインライン表示
Python
- ライン統合の革新:現代の課題と解決策
- CNC工作機械への新規工具追加:ステップバイステップガイド
- 新技術が耐火材料をどう変革するか
- C 言語のコメント完全ガイド: 明確で効果的な注釈の書き方
- Python入門: インストール・実行・最初のプログラム作成
- Python I/Oとモジュールインポート完全マスター: 実践ガイド
- Pythonで現在の日付と時刻を取得する実践ガイド
- Python print()関数の実践ガイド:基本から応用まで
- Pythonでファイル・ディレクトリの存在確認:実践ガイド
- Pythonで平均を計算する:実践ガイド
- Pythonで一時変数なしで2変数をスワップするワンライナー