第1回-2 おみくじに、名前を入れてみよう →ユーザが入力した文字を表示しよう!
1. はじめに
先ほどは、決められた文字を表示しました。
次は、おみくじの参加者が、自分の名前を入力し、その名前を付加して「○○さん、おめでとうございます!大吉です」と出すプログラムです。
■要件
・「あなたのお名前は?」と聞いて、名前を入力してもらいます。
・その後、先ほどのおみくじを実行します。
■ソースコード
print('あなたの今日の運勢は・・・') for i in range(10): print('・') print("おめでとうございます!大吉です")
※メモ 以下を見ると、もっときれいに記載ができそうだ。
https://kurokinomizuiwa.hatenablog.com/entry/2018/11/10/hatena-blog-source-code-paste
◼️実行結果
あなたの今日の運勢は・・・ ・ ・ ・ ・ ・ ・ ・ ・ ・ ・ おめでとうございます!大吉です
◼️解説
0.このプログラムを理解するのに必要な知識
- プログラムは上から1行ずつ実行される
- print(文字列)で文字が表示できる
- 固定の文字列は「"」または「'」で囲む
- for i in range(10): で10回繰り返す
1. プログラムの実行
プログラムは基本的に1行ずつ上から実行されます。
この例では1行目の
print('あなたの今日の運勢は・・・')
が最初に実行されることになります。
それが終わると(文字が表示されると)、次の
for i in range(10): print('・')
が実行されるわけですが、この説明は少し後でします。1行ずつと言ったばかりなのにいきなり2行取り上げた理由も後で説明します。
最後に、
print("おめでとうございます!大吉です")
が実行されてプログラムは終了します。
■コラム Pythonは簡単!!
今回、文字列を表示するプログラムを紹介しました。
Pythonだと、1行ですよね。
でも、C言語だと違うんです。以下みたいに、たくさん書かなければいけないんです。しかも、stdio.hとか、わけのわからない文字もあります。
#include<stdio.h> int main() { printf("おめでとうございます!大吉です"); returun 0; }
Pythonは簡単でいいですね!!
2&3. 文字列の表示
print関数を利用します。
print(表示する文字列)
固定の文字列を表示するときには「"」(ダブルクォーテーション)または「'」(シングルクォーテーション)で囲みます。
javaでは、1文字は''、文字列は""と区別されていましたが、pythonでは区別されていません。
print("こんちくは")
こんちくは
print('こんちくは')
こんちくは
print(3)実行結果
3改行を含めて表示するにはダブルクォーテーション3つ「"""」で囲います。
print("""ab cde fg""")
ab cde fg特殊な文字、たとえば、「'」を表記する場合には「¥」を付けます。英語のキーボードでは「\」(バックスラッシュ)と表現されることでしょう。これを付けないと、プログラム的な意味なのか、単なる文字列なのかが分からないからです。
print ('こん\'ちくは')
こん'ちくは
それ以外にも、いろいろと試してみるといいですよ。
参考までに、いくつか試した結果が以下です。
print("12") →12
print(12) →12
print(こんにちは) →エラー
print("こんにちは') →エラー
4. 繰り返し処理
もったいつけて説明を保留したfor i in range(10)ですが、ここでは次の処理を10回繰り返すもの、としてください。この構文をfor文と言います。
(2行まとめて取り上げたのは「次の処理」と対になっているからです。)
どこまでを繰り返しの1セットとするかはpythonではインデント(字下げ)によって表現します。for文の次にあるprint('・')の先頭についている半角スペース(ここでは4つ入れています)がインデントです。今回はインデントがついているのがこの1行だけなのでここだけが10回繰り返されて次の処理に進みます。
なので、この2行で「・」を10回表示する、という動作をすることになります。