【解説付き】pythonの学習問題を解いてプログラミングスキルを高めよう1

こんにちは、ウチダです。

私は趣味でプログラミング言語pythonを勉強しています。

投資の分析や仕事の自動化に活用しています。

大規模なアプリ開発やエンジニア転職は目指していませんが、投資や仕事でもっと成果を挙げたいと考えています。

そこで、こちらの本を読んでいます。

退屈なことはPythonにやらせよう

この本は、pythonを仕事に活かせるように、実用的なプログラミングが学べる一冊です。

WordやExcel、PDFの操作だけでなく、メールやSMSの送受信、画像処理なども身につけられます。

単なる解説本ではなく、学習問題がついているので、スキルに定着しやすいと思います。

今回はpythonの学習問題を解いて、解説しました。

pythonの学習の一助になると幸いです。

第1章:Pythonプログラミングの基礎

第1章:Pythonプログラミングの基礎

なぜ仕事にプログラミングが必要かというと

ずばり人間にしかできない仕事に時間を多く割り当てるためです。

業務を分析して、自動化できる作業はプログラミングで処理します。

そうすると生産性も高まりますし、人間として仕事のやりがいも大きくなると思います。

仕事に役立つプログラミングを学ぶなら、Pythonがおすすめです。

プログラミング言語Pythonはコードが非常にシンプルで、誰もが簡単にプログラムを作れます。

また、ツールも無料で取得でき、ネットにもコードが多数掲載されています。

Pythonは初心者こそおすすめのプログラミング言語なんです。

ただ、実用書を読むだけでは理解も難しいですよね。

そこで演習を通して、専門語や使い方を覚えていけたらきっと楽しいと思います。

今回は第1章Python入門を解いてきましょう!

python学習1:演算子と値を理解しよう

'''
次のうち、どれが演算子で、どれが値ですか?
*
'hello'
-88.8
-
/
+
5
'''

まずはプログラミングの書き方を覚えます。

演算子は+や-、*などの数学の計算に用いる記号です。

演習では、*(掛け算)、-(引き算)、/(割り算)、+(足し算)が演算子に成ります。

エクセルの計算式と同じものと違うものがあるので、使いながら覚えるのがベストです。

値は数字だけでなく、文字も含まれます。

演習では、文字の’hello’、数字の-88.8、5が値です。

python学習2:変数と文字列を理解しよう

'''
次のうち、どちらが変数で、どちらが文字列ですか?
spam
'spam'
'''

pythonのプログラムは、文字列(str型)を入力できます。

文字列はpythonが始まりと終わりを認識できるように、’(シングルクォート)や”(ダブルクォート)で囲んで使います。

演習では’spam’が文字列になります。

一方、変数は’(シングルクォート)や”(ダブルクォート)を使いません。

演習ではspamが変数です。

変数には文字列や数字などを入れることができ、箱のような役割をします。

例えば、中学数学ではx=10と書くと、xに10を代入すると教わりますよね。

これはxを変数として扱っています。

pythonも同様に、変数=値にすることで、文字列や数字を代入できます。

python学習3:データ型を理解しよう

'''
データ型を3つ挙げなさい。
'''

この演習では値のカテゴリー、つまりデータ型を問われています。

データ型には整数、浮動小数点数、文字列があります。

  • 整数(int)は、-2,-1,0,10,1000などの値です。
  • 浮動小数点数(float)は、-1.25,-1.0000,0.0,1.25などの値です。
  • 文字列(str)は、’cat’, ‘Hello’, “pepsi”など、’(シングルクォート)や”(ダブルクォート)で囲まれた値です。

python学習4:式の構成を理解しよう

'''
式は何から構成されていますか?
式を評価するとどうなりますか?
'''

算数は4+6=10のように、式は値と演算子からなります。

pythonも同様で、式は値と演算子からなります。

式を処理することは評価と呼びます。

値には数字だけでなく、文字列も処理するためです。

式を評価すると1つの値になります。

2+2=4と同じです。

文字列の評価は、’spam’+’ham’=’spamham’のように、数字と同様の評価ができます。

こちらも評価した結果は1つの値になっています。

python学習5:式と文の違いを理解しよう

'''
式と文の違いは何でしょうか?
'''

次の式を評価するとどうなるでしょう?

‘Bob’ * 3

値は文字列と整数があり、演算子は*です。

正解は’Bob’が3つ連結します。これは1つの値です。

‘BobBobBob’

つまり式は評価すると1つの値を返します。

一方、文はそうではありません。

演習の解は、評価すると1つの値を返すものが式、そうでないものは文です。

python学習6:代入文を理解しよう

'''
次のコードを実行すると、変数baconには何が格納されますか?
bacon = 20
bacon + 1
'''

評価すると21が表示されます。

baconには21が格納される・・・のは間違いです。

なぜなら、代入文はbacon=20だけであり、bacon+1はただの式です。

正解は20になります。

もしbaconに21を入れるなら、bacon += 1と書きます。

python演習6の結果

python学習7:式の評価を理解しよう

'''
次の2つの式を評価すると何になりますか?
'spam' + 'spamspam'
'spam' * 3
'''

文字列の足し算では、その文字列同士を結合させます。

つまり’spam’ + ‘spamspam’の評価結果は’spamspamspam’です。

次に’spam’ * 3ですが、掛け算の意味は足し算の簡略化ですよね。

例えば、3*4は、3+3+3+3という足し算を別の表現で表したものです。

つまり’spam’ * 3は、’spam’+’spam’+’spam’と同義であり、答えは’spamspamspam’です。

2つの式を評価すると、どちらも’spamspamspam’でした。

python学習8:変数名の付け方を理解しよう

'''
eggsは正しい変数名であり
100は間違った変数名である理由は何ですか?
'''

中学数学でも変数名にはルールがあったと思います。

例えば100Xは変数名にできません。

100*Xと区別ができないためです。

同様に、pythonの変数名にもルールがあります。

  1. ひとつながりの語であること
  2. 文字と数字と下線記号_のみを用いていること
  3. 数字から始まらないこと

演習ではeggsは3つのルールを満たします。

しかし、100はルール3を満たさないため、変数名にできません。

_100やx100なら使えます。

python学習9:データ型の変換を理解しよう

'''
ある値を整数、浮動小数点数、文字列にそれぞれ変換するのに
用いる関数は何ですか?
'''

以下の式は成り立つでしょうか?

‘私は’ + 26 + ‘歳です’

実は成り立ちません。文字列と整数は連結できないためです。

エラーを解消するには、26を整数から文字列に変換する必要があります。

変換に使用するのは以下の関数です。

  • int(値):値を整数に変換する。
  • float(値):値を浮動小数点数に変換する。
  • str(値):値を文字列に変換する。

上記の例だと、’私は’ + str(26) + ‘歳です’に直すと成り立ちます。

python学習10:データ型の変換を理解しよう

'''
次の式がエラーになる理由は何ですか?
どうしたら修正できますか?
'I have eaten' + 99 + 'burritos'
'''

学習9の解説と同様です。

文字列と整数は連結できないためです。

‘I have eaten’ + str(99) + ‘burritos’に修正します。

python学習11:組み込み関数を理解しよう

'''
Pythonのオンラインドキュメントからlen()関数を探しなさい。
「組み込み関数」というタイトルのページが見つかるはずですが、
そこから他のPythonの組み込み関数を抽出し、round()関数の働きを調べ、
インタラクティブシェルに入力して試しなさい。
'''

まずPythonのオンラインドキュメントを開きます。

(参考:Pythonオンラインドキュメント

pythonのオンラインドキュメントトップ

総合索引を開きます。

pythonのオンラインドキュメントの総合索引

len()関数はLで検索して、探します。len()関数を表示した結果はこちら。

pythonドキュメントのlen関数

次にround()関数を調べます。

pythonドキュメントのround関数

そしてインタラクティブシェルに入力して試します。

私はJupyter Notebookを使っているので、こちらで入力します。

これで第1章の学習は終わりです。

単に本を読むより、演習を通して学ぶほうが楽しく感じませんか?

もっと詳しく勉強したい方はこちらの本をおすすめします。

次回は第2章を解説します。

ここまで読んでくださりありがとうございました。

★Pythonを活用した記事

エクセルの家計簿を自動処理させる話

インスタグラムの自動いいねを作った話

Pythonで投資のチャート分析を始めよう!

1995年生まれ、佐賀県出身。 高専を卒業して大手化学メーカーの研究職に就職するが、投資で1200万円作ったので好きなことをやろうと決め、5年で退職する。 現在は保険代理店に勤めながらお金から自由になる仕組みづくりに挑戦している。 趣味は国内旅行。「コロナが明けたら旅行に行こう」が妻との合言葉。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA