第93回【Python】数字の文字列操作(基本)、数字の文字列操作(0埋め)

現在取り組んでいるのは、paiza ラーニング問題集「C ランクレベルアップメニュー」になります。

はじめに

猫とキャンプと野球観戦と AWS が大好きな旦那、LeoSaki です。モフモフしたい。

Python をゼロから勉強してみよう、のコーナー 93 回目です。

休み明け、少し怠いなぁと思いながら出社して、仕事を始めればいつの間にかスイッチが入るものです。いろんなことをしているので、いつだってあっと言う間。気づいたら帰る時間です。

それでは、今日も頑張ってみようと思います。

数字の文字列操作(基本)

0 ~ 9 の数字が 4 つ並んだ文字列 S が与えられます。
左から 1 番目の数と 4 番目の数を足し合わせたものを a とし、 2 番目の数と 3 番目の数を足し合わせたものを b とします。

文字列としての a の末尾に文字列としての b を結合したものを出力してください。

S

すべてのテストケースにおいて、以下の条件をみたします。

・S は 0 ~ 9 の数字 4 文字からなる文字列


入力例

2134

出力例

64

基本ってついているので、さくっと終わらせましょう。基本に忠実に。

Python
S = input()
a = int(S[0]) + int(S[3])
b = int(S[1]) + int(S[2])
print(str(a) + str(b))
VBA
S = Cells(1, 1)
A = Val(Left(S, 1)) + Val(Right(S, 1))
b = Val(Mid(S, 2, 1)) + Val(Mid(S, 3, 1))
Debug.Print A & b

数字の文字列操作(0埋め)

0 ~ 999 の整数 n が与えられます。 n が 3 桁の数である場合には n をそのまま出力し、 n が 2 桁の数である場合には n の先頭に 0 をひとつ、 1 桁の数である場合には n の先頭に 0 をふたつ加えたものを出力してください。

n

すべてのテストケースにおいて、以下の条件をみたします。

・0 ≤ n ≤ 999


入力例

7

出力例

007

ゼロ埋めは結構、使いどころがあるので覚えておきたいところ。

Python
S = input()
print(S.zfill(3))
Python(模範解答)
S = input()
while len(S) < 3:
    S = '0' + S
print(S)
VBA
S = Cells(1, 1)
Debug.Print Format(S, "000")
VBA(別解)
S = Cells(1, 1)
Do While Len(S) < 3
    S = "0" & S
Loop
Debug.Print S

最後に

数字の文字列操作は、大変使いどころどころが多いと思うので、しっかり身に付けたいヤツです。とある会社様の品名コードをゼロ埋めで作ったり、切った貼ったでチェックサムを作ったりしたことがあります。

関数でお手軽に、とばかり考えていましたが、While 文を利用したやり方も面白いなぁと思いました。

引き続き、よろしくお願いいたします!

Pythonpaiza,学習,Python

Posted by LeoSaki