改行しないでprintする方法
endを指定する
Pythonのデフォルトでは、print関数は末尾に改行を含めて出力する。これをやめるにはオプション引数の end に空文字列を指定すれば良い(”\0″ としてNULLを指定しても同じ)。
print("hello", end="")
print("hello")
# hellohello
for i in range(1,11):
print(i, end="")
# 12345678910
なお、end には任意の文字列を指定できる。よく使われるのはカンマ(”, “)やタブ区切り(”\t”)などであるが、日本語なども指定できるので使いどころによっては意外と便利だったりする。
sys.stdout.writeを使う
sysモジュールをインポートしてsys.stdout.write関数を使っても改行を取り除くことができる。これはPython2系でも利用できる方法である。
sys.stdout.write("hello")
sys.stdout.write("hello")
sys.stdout.write("hello")
# hellohellohello
