Python100本ノック by サプー 11~20問目
11問目
「あいうえお」という文字列があります。1文字ごとに改行がある文字列に編集し、出力してください。
ヒント
改行は「\n」特殊な表現方法である。
エスケープシーケンスを使って表すことができます。
回答
# 変数textの文字を修正して、1文字ごとに改行されるようにする
word = 'あ\nい\nう\nえ\nお'
print(text)
12問目
「 鈴木 太郎\n」という文字列があります。先頭の半角スペースと末尾の開業を取り除き「鈴木 太郎」という文字列を別の変数に代入し、print関数で出力してください。
ヒント
文字列型にはstrip関数があります。
回答
name = ' 鈴木 太郎\n'
result = name.strip()
print(result)
13問目
変数「x」に「Apple」という文字列を代入する。
すべて大文字に変換した文字列とすべて小文字に変換した文字列をそれぞれ出力してください。
ヒント
文字列型にはupperとlowerという関数があります。
回答
x = 'Apple'
print(x.upper())
print(x.lower())
14問目
要素が「りんご」「バナナ」「オレンジ」であるfruitsというリストを作成する。
そのリストをprint関数を使って出力してください。
回答
fruits = ['りんご','バナナ','オレンジ']
print(fruits)
15問目
変数「fruits」に「りんご」「バナナ」「オレンジ」という要素が入っています。
このリストの長さをprint関数で出力してください。
回答
fruits = ['りんご','バナナ','オレンジ']
print(len(fruits))
16問目
変数「fruits」に「りんご」「バナナ」「オレンジ」という要素が入っています。
このリストの先頭要素を取り出して「先頭は○○です」と出力してください。
また、リストの末尾要素を取り出して「末尾は○○です」と出力してください。
回答
fruits = ['りんご','バナナ','オレンジ']
print(f'先頭は{fruits[0]}です')
print(f'末尾は{fruits[-1]}です')
17問目
03-1111-2222という電話番号の文字列があります。
先頭から2文字を取り出して出力してください。
また、文字列の長さを取得して出力してください。
ヒント
スライス操作と呼ばれるシーケンシャルな要素を操作する方法があります。
以下のように指定します。
文字列.[開始地点 : 終了地点 : ステップ数]
開始地点:要素の取り出しを開始する位置
終了地点:要素の取り出しを終了する位置
ステップ数:何個おきに取り出すか
回答
number = '03-1111-2222'
result = number[:2:]
print(result)
18問目
03-1111-2222という電話番号の文字列があります。先頭の4番目から7番目までの文字列を取得してください。
回答
number = '03-1111-2222'
result = number[3:7]
print(result)
19問目
03-1111-2222という電話番号の文字列があります。ハイフンで区切った配列にして出力してください。
期待する出力:[’03’,’1111′,’2222′]
ヒント
文字列型にはsplit関数がある。
split関数は引数で受け取った文字列で区切った配列を受け取ることができる。
回答
phone = '03-1111-2222'
array = phone.split('-')
print(array)
20問目
変数phone_listに[’03’,’1111′,’2222′]という電話番号の数字部分を要素にもつリストがあります。このリストの各要素をハイフンで結合した文字列を作成してください。
ヒント
文字列型にはjoin関数があります。
join関数は引数で渡されたリスト文字列を区切り文字で結合した文字列にしてくれます。
'区切り文字'.join(リスト)
回答
phone_list = ['03', '1111', '2222']
phone = '-'.join(phone_list)
print(phone)