LoginSignup
0
2

More than 3 years have passed since last update.

~ 出力 ~ チートシート

Last updated at Posted at 2021-03-23

目次

出力が複数行で各行に1つずつの場合 [print(mat[i]) for i in range(len(mat))]
出力が複数行で各行に複数の場合 [print(*mat[i]) for i in range(len(mat))]
コメント付きで出力する場合 print('hoge {0} piyo {1} huga'.format(A,B))

出力が1つのみの場合 print(ans)
出力が1行で複数の場合
 出力が1行で数個の場合 print(X,Y)
 出力が1行で多数の場合 print(*mat)

はじめに

チートシートの扱いついてはここを読んでください

出力が複数行で各行に1つずつの場合

output.py
[print(mat[i]) for i in range(len(mat))]
出力例
>>> 0
>>> 1
>>> 2

1行で簡単に表せる
そもそもこういうタイプの入力はあまりAtcoderでは見ない気がするけど.....

output.py
for i in range(len(mat)):
  print(mat[i])

これでも同じですね(各行に数個ずつの場合とかはこっちでやる)

出力が複数行で各行に複数の場合

input.py
[print(*mat[i]) for i in range(len(mat))]
出力例
>>> 1 2 3
>>> 4 5 6
>>> 7 8 9

やってみたら一応1行で書けたけど、ここまでくるともう何がなんだか...

output.py
for a in mat:
  print(*a)

こっちの方がわかりやすい(個人的見解)
コピペせずに自分で打つならこっちかな

input.py
[print(*mat[i], sep='') for i in range(len(mat))]
出力例
>>> ###
>>> #.#
>>> ###

Atcoderでよくある#.で地図とかを表すような出力用

output.py
for a in mat:
  print(*a, sep='')

一応こっちでも空白なしの場合を載せておく

output.py
for a in mat:
  print(*a, sep=',')
出力例
>>> 0,1,2
>>> 3,4,5
>>> 6,7,8

これも''の内部をいじると文字同士の間を変えられる

コメント付きで出力する場合

output.py
print('試合結果は {0}-{1} でした'.format(X, Y))
出力例
>>> 試合結果は 33-4 でした

Atcoderだと使わないけど、個人開発とかする時にはよく使うので載せておく

出力が1つのみの場合

output.py
print(ans)

多次元配列とかでもprint()に入れさえすれば大体出力できちゃうのですごい

出力が1行で複数の場合

出力が1行で数個の場合

output.py
print(X,Y)

,で全部つなぐだけ

出力が1行で多数の場合

output.py
print(*mat)
出力例
>>> 0 1 2 3 4 5

これ結構便利(特に2次元配列の時にforと組み合わせるときれいに表示できる)

output.py
print(*mat, sep='')
print(*mat, sep='+')
出力例
>>> 012345
>>> 0+1+2+3+4+5

''の内部をいじると文字同士の間を変えられる

output.py
mat=''.join(mat)
print(mat)
出力例
>>> abcdef

配列の要素がstrの場合使える(intとかだとエラー吐く)

output.py
mat='+'.join(mat)
print(mat)
出力例
>>> a+b+c+d+e+f

これも''の内部をいじると文字同士の間を変えられる
自明だけど文字列とかを空白を開けず連結して出力したいときはmat=''.join(mat)

0
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
2