CS50’s Introduction to Programming with PythonのShortsよりVariablesの内容を記載したいと思います。動画で勉強しながら、復習になど使っていただけたら嬉しいです。
まだ、下記の記事を読んでいない方は、先にそちらを読んだ方が、わかりやすいと思います。
Return Values - CS50’s Introduction to Programming with Python
動画へは下記リンクよりアクセスできます。動画を見ながらまたは、復習として、この記事をご活用ください。
Variables - CS50P Shorts
まず、Visual Studio Code for CS50にアクセスして、GitHubアカウントでログインします。
ファイルを作成する
code guess.py
でファイルを作成します。
guess = 10
print(guess)
guessに10を代入して、printします。
python guess.py
を実行します。
functionを定義する
get_guess functionを定義します。
def get_guess():
guess = 10
return guess
print(get_guess())
python guess.py
get_guessがprintされ、10が出力されます。
input functionを使う
今度は、userに自由な値を入力してもらうようにします。
input functionを使います。
def get_guess():
guess = input("Enter a guess: ")
return guess
print(get_guess())
python guess.py
Enter a guess: が出力されたら、好きな数字を入力してenterを押すとその数字が出力されます。
return valueをもう1つのfunctionで使う
今度はもう1つfunctionを定義して、そのfunctionにinputされた値を渡してから、出力されるようにします。
def get_guess():
guess = input("Enter a guess: ")
return guess
def main():
guess = get_guess()
print(guess)
main()
python guess.py
上記の2つのfunction get_guessとmainどちらにもguessが使われていますが、別々のfunctionの中なので、別のものとして認識されます。
先ほどと同じように好きな数字を入力するとその数字が出力されます。
正解と不正解を出力する
今度は、guessに50を代入して、入力した数字が同じ50だとCorrect!違う数字だとIncorrect!と出力されるようにします。
def get_guess():
guess = input("Enter a guess: ")
return guess
def main():
guess = get_guess()
if guess == 50:
print("Correct!")
else:
print("Incorrect!")
main()
python guess.py
ここで、50と入力するとCorrect!と返ってくるはずですが、なぜかIncorrect!と返ってきます。
理由は、input functionでは、すべて、文字列(str)として、認識されてしまい、50が数字(int)ではなく文字列(str)と認識されてしまっているので、Incorrect!になっています。なので、この50を数字(int)に直します。
値をstrからintに変える
def get_guess():
guess = int(input("Enter a guess: "))
return guess
def main():
guess = get_guess()
if guess == 50:
print("Correct!")
else:
print("Incorrect!")
main()
python guess.py
これで今度は、50と入れるとCorrect!25と入れるとIncorrect!と返ってくるようになりました。
inputをstrに変える
今度は、先ほど追加したintを消して、50を"fifty"に変えて、fiftyと入力してみます。
するとCorrect!と返ってきます。tenと入力するとIncorrect!!と帰って来ます。
def get_guess():
guess = input("Enter a guess: ")
return guess
def main():
guess = get_guess()
if guess == "fifty":
print("Correct!")
else:
print("Incorrect!")
main()
python guess.py