プログラミング

Python初心者向け!まずはこれだけ練習すれば大丈夫。学習・勉強法を解説!

更新日: 投稿日:2020年11月27日

Python初心者向け!まずはこれだけ練習すれば大丈夫。学習・勉強法を解説!
ロゴ画像:公式サイトより https://www.python.org/community/logos/

現役エンジニアである私(筆者)は仕事でPythonを使用する機会が多く、まずは私が経験したPython学習法、練習法について説明させていただきたいと思います。

Python初心者のための練習法

Pythonはデータ解析・管理を行うツールとしても非常に機能が高い為、その扱いに慣れておくといいです。従いまして、Pythonの初心者の方がまず練習したいのが、データ管理・データ解析を上手に使いこなせる方法です。

今回は、超初心者向けの練習法として、以下の例題を用意してみました。是非参考にしてみてください。

本記事は、これからPythonの学習を始めようとしている方やプログラミング言語未経験の方に向け、現役エンジニアの方にわかりやすく解説して頂きました。また、記事の後半ではPython学習におすすめな『プログラミングスクール』や『オンラインの学習サービス』を紹介しています。ぜひ最後までご覧ください!

【例題】以下のサンプルファイル(sample.txt)を一行ずつ読み込み、データを出力させる。

<sample.txt>

Name:Workday
———————
Sato:Mon,Tue,Wed
Yamamoto:Tue,Thu,Fri
Kobayashi:Wed,Thu
Takahashi:Mon,Fri

上記のサンプルデータの中身がよくわかりずらいと思いますが、今回は特に気にしなくても構いません。アルバイトの出勤日だと思っていただければわかりやすいと思います。

考え方

ファイルを一行ずつ読み込み、データを出力させる場合の考え方としては以下の順序で処理を行うのがいいです。

  1. ファイルを開く
  2. 一行ずつリストに読み込む
  3. ファイルを閉じる
  4. データを出力する

プログラム例

list=[] ・・・①

f=open('sample.txt') ・・・②
line=f.readline() ・・・③

while line: ・・・④
  line1=line.rstrip('¥n') ・・・⑤
  list.append(line1) ・・・⑥
  line=f.readline() ・・・⑦
f.close() ・・・⑧

for i in range(0,len(list),1): ・・・⑨
  print (list[i]) ・・・⑩

では、このプログラムについて一行ずつ説明していきましよう。

【解説1】ファイルを開く

list=[] ・・・①

f=open('sample.txt') ・・・②

①初期設定として、リスト変数“list”に空の値を代入します。
※pythonで言うリストとは、配列変数の事です。

今回の例ではlist(リスト変数)に要素(データ)を格納していきたいので、まず初期設定としてリスト変数内の要素を空にする必要があります。

②open関数でファイルを開きます。
今回の例では、‘sample.txt’のファイルを開き、変数fにファイルオブジェクトを入れます。

【解説2】一行ずつリストに読み込む

line=f.readline() ・・・③

while line: ・・・④
  line1=line.rstrip('¥n') ・・・⑤
  list.append(line1) ・・・⑥
  line=f.readline() ・・・⑦

③readline関数で、一行ずつリストに読み込みます。
今回の例では、まず’sample.txt’の最初の一行(Name:Workday)だけ読み込み、変数lineに入れます。

④while文で、ファイルを一行ずつ、全ての行を読み込みます。
while文は指定した条件式が真の間、処理を繰り返し実行します。

(書式)
while 条件式:
 条件式が真のときに実行する文

今回の例では、変数”line”が真の間、つまり’sample.txt’の最後の行まで一行ずつ、⑤〜⑦の処理を繰り返します。

⑤rstrip関数で、文字列の右側の文字を除去し、変数line1に入れます。

(書式)
 文字列.rstrip(除去する文字)

今回の例では、readline関数で、一行ずつ読み込むと最後の改行(‘¥n’)も含まれてしまいますので、改行文字(‘¥n’)を除去する必要があります。
  
⑥リスト(配列)のメソッドappend()で、要素を追加していきます。

今回の例では、まず最初は下記の様に、配列変数”list”に”line1”に入っている要素(Name:Workday)が追加されます。

 list[0]= “Name:Workday”

⑦readline関数で、次の一行をリストに読み込みます。
今回の例では、’sample.txt’の次の一行(”———————“)だけ読み込み、変数lineに入れます。

④のwhile文で⑤〜⑦の条件を繰り返すと、今回のメソッドappend()で以下のようにリストに要素が追加されていきます。

list[0]=”Name:Workday”
list[1]=”---------------------"
list[2]=”Sato:Mon,Tue,Wed”
list[3]=”Yamamoto:Tue,Thu,Fri”
list[4]=”Kobayashi:Wed,Thu”
list[5]=”Takahashi:Mon,Fri”

【解説3】ファイルを閉じる

f.close() ・・・⑧

⑧close関数を使い、ファイルを閉じます。
今回の例では‘sample.txt’のファイルを閉じ、変数fにファイルオブジェクトを入れます。

【解説4】ファイルを出力

for i in range(0,len(list),1): ・・・⑨
  print (list[i]) ・・・⑩

⑨for文を使って繰り返し処理を行います。

(書式)
for 変数 in オブジェクト:
 実行する処理

また、今回の例では、range関数とlen関数を使って繰り返し処理を行ってます。


引数に指定した開始数から終了数までの連続した数値を要素として持つrange 型のオブジェクトを作成します。

(書式)
range(start, stop[, step])

今回の例では、開始数”0”から終了数”len(list)”まで、1ステップずつ⑩の処理を繰り返し実行します。

<len関数>
引数にリストを指定した場合には、リストに含まれる要素数を取得することができます。

(書式)
len(リスト)

今回の例では、リスト変数”list”の要素数はlist[0]〜list[5]なので、len(list)=6となります。

⑩print関数を使って、引数の値を出力します。
今回の例では⑨⑩の処理で、開始数”0”から終了数”6”まで、1ステップずつlist[0]〜list[6]を出力します。

(出力結果)

Name:Workday
———————
Sato:Mon,Tue,Wed
Yamamoto:Tue,Thu,Fri
Kobayashi:Wed,Thu
Takahashi:Mon,Fri

この処理によって、サンプルファイルを一行ずつ読み込み、データを出力させる方法が完了となります。

まとめ

今回は初心者用として、サンプルファイルを一行ずつ読み込み、データを出力させる方法を行いました。これは基本中の基本なので覚えているといいです。

ただ、通常のPythonの使い方としては、データをそのまま出力する事はあまりなく、その一行の文字を読み取って、処理して出力するという場合が殆どなので、その他の色々な関数を覚えていく必要があります。

応用例として、以下の様なデータ処理で出力する方法を挙げてみました。

(応用例)

Name:Mon,Tue,Wed,Thu,Fri
—————————–
Sato:〇,〇,〇,×,×
Yamamoto:×,〇,×,〇,〇
Kobayashi:×,×,〇,〇,×
Takahashi:〇,×,×,×,〇

Pythonで今回のサンプルデータから、以下のように出力させてみるのも初心者の練習方法にとってはいいでしょう。Pythonを学習していく事で、さまざまな処理に慣れていきましょう。

もう一度「Python初心者向け!まずはこれだけ練習すれば大丈夫。学習・勉強法を解説!」を読む ↑

プログラミング初心者が効率よく学習するならスクールがおすすめ

プログラミングスクールであれば必要な知識を体系的に学べるだけでなく、質問できる環境が整っており、その道のプロから的確な回答が返ってきます。効率良く学習するうえでこの上ない環境といえます。

ここではPythonを学習するのにおすすなプログラミングスクールをご紹介します。

.Pro(ドットプロ)

.Pro(ドットプロ)の公式サイト

.Pro(ドットプロ)は少人数制で集中して学習できる通学型のプログラミングスクールです。最前線で活躍する現役クリエイターの講師陣が対面指導してくれます。座学や講義ベースのプログラミング授業だけではなく、月1回教室で開催される製作発表会やグループワークなど現場に近い環境で学習を進めます。なお、.Pro(ドットプロ)の教室は東京(渋谷区)の1箇所だけなので、関東圏に在住の方でないと難しいかもしれません。オンラインコースもあり

.Pro(ドットプロ)では、リクルーティングスタッフによる就職・転職サポート、フリーランスや個人事業の開業支援などが受けられます。そのほか、6ヶ月間の受講期間後でも講師陣による学習サポートを受けられるので、もし転職活動中であっても心強いですよね。

公式サイト:.Pro(ドットプロ)|AI×Djangoコース

スタートラボ(Start Lab)

スタートラボ(Start Lab)の公式サイト

スタートラボ(Start Lab)は、クリエイティブ業界で有名な「株式会社クリーク・アンド・リバー社」のグループ企業が運営する、Pythonエンジニア育成推進協会の公式認定スクールです。

受講スタイルはオンライン完結型。未経験からPythonを学ぶ2ヶ月間のコースを、業界最安値の69,800円(税込)で受講できるのが最大の特徴です。運営会社がPythonでのシステム開発に携わっているので、現場で通用する最新技術を習得する事が可能です。

初学者でも挫折しないサポート体制には定評があり、リアムタイム講義やチャットサポート、アーカイブ視聴などを全て無料で利用することができます。

また、受講するプログラミング入門コースでは、Python3エンジニア認定基礎試験合格レベルのスキル習得を目標としています。あわせて、AI技術を活用したアプリケーション作成や機械学習によるデータ分析手法など実践的な技術も身につけられる充実ぶり!

公式サイト:スタートラボ(Start Lab)

DMM WEBCAMP 学習コース(旧:SKILLS)

DMM WEBCAMP 学習コース(旧:SKILLS)

DMM WEBCAMP 学習コース(旧:SKILLS)は、マンツーマンによる指導と独自メソッド(ITスキル習得に必要なプロセスを3ステップに分解)で、未経験から『最短』で即戦力スキルを身につけることができるプログラミングスクールです。

Pythonコースでは、AIの基礎から機械学習、そして特徴量作成・モデル構築・精度評価の一連を実践しながら習得していきます。カナダで開発された学習・評価モデル『ICEモデル』を基にした独自カリキュラムで、未経験でも短期間で上達でき挫折することなくやり遂げることが可能です。

週2回行われるメンタリングではモチベーションを維持・向上させるために、学習方法のレクチャーや疑問点の解消、1週間の振り返りなどのサポートを行っています。

このコースでは実際に機械学習プログラムを開発することができるので、現場で通用する実践的なスキルを身につけることができます。また、エラーが出たりつまづいた場合には、毎日15時〜23時にチャットで質問でき(であれば素早く回答!)、課題へのレビューサポートも無制限で行っています。※タイタニックの乗客データからの生存者を予測や花の種類の分類、レンタサイクルの利用者予測など

AI・データサイエンスの知識を身につけて転職に活かしたい社会人や、将来性あるPythonを習得して就職活動の強みとしたい学生の方には特におすすめのコースです。

公式サイト:DMM WEBCAMP 学習コース(旧:SKILLS)

もっと詳しく比較したい方は、「Pythonが学べるおすすめプログラミングスクール11選!未経験・学生もOK!」という記事を参考にしてください。通学・オンライン、マンツーマンやオーダーメイドカリキュラムなど、目的に”ぴったり”の教室が見つかりますよ!

Pythonが学べるおすすめプログラミングスクール11選!未経験・学生もOK!

Python以外の言語を学べるスクールを比較するなら

もっと多くのプログラミングスクールの中から比較したいという方は、「おすすめプログラミングスクール比較11選!社会人・未経験の転職・就職にも有利!」という記事を参考にしてください。

おすすめプログラミングスクール比較11選!社会人・未経験の転職・就職にも有利!

転職付き(転職保証型)のプログラミングスクールの詳細を知りたいかたは、「【無料あり】転職支援・保証型プログラミングスクール比較11選!社会人・学生さんの就職に強い!」をご覧いただき、自分の目標や目的にぴったりのスクールを見つけてくださいね。

【無料あり】転職支援・保証型プログラミングスクール比較11選!社会人・学生さんの就職に強い!

Pythonを活かせるエンジニア転職におすすめな転職サイト・転職エージェント

Pythonを活かしたエンジニア転職におすすめな転職エージェント・転職サイトを比較するなら「エンジニアにおすすめ!IT/Web系に強い転職サイト11選|現役プロが比較・ランキング」という記事を参考にしてください。活かせる言語や業種など、自分の目的や条件にあった職場探しにお役立てください。

大手エージェントdodaが公開した情報によると、昨年2020年以降コロナの影響もあり停滞傾向にあった転職市場ですが、2022年上半期は『追い風』の傾向にあります。特にIT/Web業界における事業活動が活発な企業ではエンジニアやクリエイティブ職、また業績が好調な半導体/電子部品の業界では機械・電気系エンジニアや化学エンジニアの採用が増える見込みです!最短かつ確実に内定を勝ち取るためにも、自身の『棚卸し』はプロである転職エージェントを積極的に活用しましょう! ※引用:https://doda.jp/guide/market/

エンジニアにおすすめ!IT/Web系に強い転職サイト11選|現役プロが比較・ランキング

[PR]:Python、Djangoを学んで転職・就職を目指すならここ

-プログラミング
-, , , , ,

関連記事

未経験者がPythonでスクレイピングを始める前に知っておくべき内容まとめ

未経験者がPythonでスクレイピングを始める前に知っておくべき内容まとめ

ロゴ画像:公式サイトより https://www.python.org/community/logos/ Pythonを学習し始めた矢先、スクレイピングなる存在を知ったそこのあなた。奇遇ですね。筆者も …

【未経験向け】Pythonでデスクトップアプリを簡単に作る方法とは?おすすめライブラリを紹介!

【未経験向け】Pythonでデスクトップアプリを簡単に作る方法とは?おすすめライブラリを紹介!

ロゴ画像:公式サイトより https://www.python.org/community/logos/ 本記事はプログラミング初学者に向けた記事となっています。これからPythonを勉強する方のため …

マーケターがPythonを学ぶべき理由を解説!出来ることや学習・活用方も!

マーケターがPythonを学ぶべき理由を解説!出来ることや学習・活用方も!

ロゴ画像:公式サイトより https://www.python.org/community/logos/ 「マーケティングに対して、なぜプログラミングを?」という方も多いと思います。実はプログラミング …

C⾔語の概要

初心者必見!C言語の基礎知識。学習方法やメリット、将来性などを解説!

これからプログラミングをC言語で学ぼうと考えている初心者もいらっしゃるのではないでしょうか。 現在、存在しているプログラミング言語は、200とも300とも種類があると言われております。そして中でも古く …

【未経験向け】Pythonの勉強・学習方法を解説!プログラミング初学者必見!

【未経験向け】Pythonの勉強・学習方法を解説!プログラミング初学者必見!

ロゴ画像:公式サイトより https://www.python.org/community/logos/ 本記事では、初心者の方に向けてPythonの勉強方法について書いていきたいと思います。 Pyt …

[PR]:
今なら割引クーポンあり!

転ストの中の人

  • 運営者のstaff H
  • 運営者のstaff M

エンジニア歴15年のstaffHとWebデザイナー・ディレクター歴20年のstaffMの2名が中心となりこのサイトを運営しています。転職/就職やフリーランスへの転向、未経験からのプログラミング学習など、これから”新しい一歩を踏み出そうとしている、エンジニア・クリエイター”に役立つ情報を発信しています。

プロフィール詳細 / Twitter




[PR]:
[PR]:
ページのトップへ戻る