第148回【Python】インクリメント、文字列の出力、文字列の分割
現在取り組んでいるのは、paiza ラーニング問題集「B ランクレベルアップメニュー」になります。
はじめに
猫とキャンプと野球観戦と AWS が大好きな旦那、LeoSaki です。モフモフしたい。
Python をゼロから勉強してみよう、のコーナー 148 回目です。
AWS のウェビナーは、業務に関連するものだけではなく、LeoSaki(旦那)が興味があるものも積極的に参加させていただいています。よっぽど業務が立て込んでいるときは参加できないこともありますが。新しい発見があったりして、とても面白いですよ!
それでは、今日も頑張ってみようと思います。
インクリメント (paizaランク D 相当)
1つの整数nが入力されるので、そのnに1を足した値を出力してください。
n
期待する出力
nに1を足した数値を出力してください。
最後は改行し、余計な文字、空行を含んではいけません。
すべてのテストケースにおいて、以下の条件をみたします。
-3,000,000 ≦ n ≦ 3,000,000
入力例
1
出力例
2
んん? こないだやった問題とまったく同じに見える。しかし、問題 URL は異なっている。謎。
Python
n = int(input())
n += 1
print(n)
VBA
Sub total_value_0()
N = Cells(1, 1)
N = N + 1
Debug.Print N
End Sub
文字列の出力 (paizaランク D 相当)
整数 n が1行目、続く行で n 個の文字列が与えられるので、n 個の文字列をそのまま出力してください。
n
s_1
s_2
...
s_i
...
s_n
期待する出力
以下の形式でn個の文字列をそのまま出力してください。
s_1
s_2
…
s_i
…
s_n
最後は改行し、余計な文字、空行を含んではいけません。
すべてのテストケースにおいて、以下の条件をみたします。
・0 ≦ n ≦ 50
・0 ≦ (文字列 s_i の長さ) ≦ 30
・s_i は半角文字で構成された文字列
入力例
3
AB
CD
EF
出力例
AB
CD
EF
文字列である、という条件。Python ではあまり気にする必要はない気がする。
Python
n = int(input())
for _ in range(n):
s = input()
print(s)
VBA
Sub total_value_1()
N = Cells(1, 1)
For i = 1 To N
s = Cells(i + 1, 1)
Debug.Print s
Next
End Sub
文字列の分割 (paizaランク D 相当)
文字列がスペース区切りで2つ入力されるので、スペースで分割し、2行で出力してください。
s_1 s_2
期待する出力
以下のフォーマットで2行で出力してください。
s_1
s_2
最後は改行し、余計な文字、空行を含んではいけません。
すべてのテストケースにおいて、以下の条件をみたします。
1 ≦ 文字列 s_1 の長さ ≦ 30
1 ≦ 文字列 s_2 の長さ ≦ 30
s_1 と s_2 は半角英数字記号で構成された文字列です。
入力例
Hello World
出力例
Hello
World
こんにちは、世界! を分割して、こんにちは! 世界! とするのですね。
Python
S = input().split()
for s in S:
print(s)
print(S[0]) と print(S[1]) を並べようとしたときに頭に浮かんだのが、要素が増えたときにいちいち追加するの面倒だなぁ。人間、面倒だなぁ、から効率の良いコードを生み出すのです。
VBA
Sub total_value_2()
s = Split(Cells(1, 1), " ")
For Each v In s
Debug.Print v
Next
End Sub
最後に
面倒だなぁ、から、効率を求めるというのは、LeoSaki(旦那)にとってはいつものことなのです。LeoSaki(旦那)が会社の所属する部署で推し進めている業務効率化も、メンバーとの雑談の中で、何が面倒かを聞くところがスタートです。面倒を潰していくことで、いつの間にか業務効率化に繋がっている、というのが LeoSaki(旦那)の考え。
コードの記述もそうですね。もし増えた場合、このままだと後々面倒にならないか、を考えて書くようにしています。人間、面倒なことはしたくないものです。
引き続き、よろしくお願いいたします!
ディスカッション
コメント一覧
まだ、コメントがありません