Python問題集を解いてみよう!!

【Python問題集】No.9 アルファベットをaから順にn個表示する

当ページのリンクには広告が含まれています。
Python問題集No.9
目次

問題

アルファベットをaから順にn個表示するプログラムを書いてください。

アルファベットは小文字のみを対象とします。

例えば、n=7の場合、「abcdefg」と表示させます。

nはプログラム実行時に入力するようにしてください。

入力が1〜26以外だった場合、「1〜26の整数を入力してください」と表示するようにしてください。

入力が1〜26の整数以外だった場合も、「1〜26の整数を入力してください」と表示するようにしてください。

おすすめのレンタルサーバー

解答

解答を見る前に、一度ご自身で考え、コードを書いてみることをオススメします。

おすすめのPython参考書

解説

今回の問題では、

  • インデックスを指定して文字列から文字を抽出する
  • 文字列が整数かどうかを判定するisdigit()メソッド
  • Unicodeコードポイントを指定して文字を取得するchr()関数

の3点について見ていきます。

文字列からインデックスを指定して文字を抽出する

文字列はインデックスを指定して文字を抽出することができます。

sample_word = 'abcde'

print(sample_word[1])
print(sample_word[3])

上記の実行結果

b
d

スライスで範囲を指定して、抽出することもできます。

sample_word = 'abcde'

print(sample_word[1:4])

上記の実行結果

bcd

解答例1ではスライスを指定する方法を使用しています。

文字列が整数かどうかを判定するisdigit()メソッド

文字列型が持つメソッドに、その文字列が整数かどうかを判定するisdigit()があります。

isdigit()は文字列が0を含む正の整数の場合はTrue、整数ではない場合はFalseを返します。

全角の正の整数もTrue、負の整数はFalseになります。

print('2'.isdigit())
print('2'.isdigit())
print('abcde'.isdigit())
print('0'.isdigit())
print('-2'.isdigit())

上記の実行結果

True
True
False
True
False

解答例1、2ともに、入力された値のチェックにisdigit()メソッドを使用しています。

Unicodeコードポイントを指定して文字を取得するchr()関数

chr()関数はUnicodeを指定して文字を取得することができます。

print(chr(97))
print(chr(98))
print(chr(122))

上記の実行結果

a
b
z

Unicodeはaが97で、zまで連番になっています。

解答例2では連番になっていることを利用しています。

Unicodeはウィキペディアなどで確認できます。

chr()関数と逆に、文字からUnicodeを取得するord()関数もあります。

print(ord('a'))
print(ord('b'))
print(ord('z'))

上記の実行結果

97
98
122

Google Colaboratory

本記事に掲載しているコードは Google Colaboratory で動作を確認しています。

下記からアクセスして、ご自身のGoogleドライブにコピーしていただければ、すぐに実行できます。

環境構築の不要な Google が提供している Webサービスなので、Python を学習中の方にはオススメです。

おわりに

今回は指定された個数のアルファベットをaから順に表示する問題をお届けしました。

解くことはできたでしょうか?

本ブログでは、今後も具体的な問題・課題の解説記事を増やしていきたいと考えています。

解説して欲しい問題・課題がありましたら、ぜひ、お問い合わせフォームからご連絡ください。

以上です。

スポンサーリンク

Python問題集No.9

この記事が気に入ったら
フォローしてね!

よかったらシェアしてね!
  • URLをコピーしました!

コメント

コメントする

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

目次