Python学習2日目【スッキリわかるPython入門】

Python学習2日目に入りました。

今日はなんだか重要そうな項目なのでしっかり学習していきたいと思います。

 

データ構造をPythonではコレクション(collection)またはコンテナ(container)と呼ぶ

『リスト』『ディクショナリ』『タプル』『セット』の四つが代表的なもの

リスト(list)

・複数の値を一列に並べて管理するためのコレクション

それぞれの値を要素(element)、先頭から順に添え字又はインデックスという番号が付いている。0から始まる。

fruits =['banana','apple','orange']

print(fruits) 

print(fruits[0])

 

結果

['banana','apple','orange']

banana

 

sum関数とlen関数を使ってみる!! 残念ながらaverageは無いようです😢

#合計点,平均点を求める

scores = [68,96,48,82,75,87]

total = sum(scores)

avg = total / len(scores)

print(f'合計は{total}点、平均は{avg}点でした。')

 

結果 

合計は456点、平均は76.0点でした。

 

次は上記リストに要素を追加してみます!

scores = [68,96,48,82,75,87]
scores.append(0)
scores.append(100)
scores.append(50)
scores.append(80)
total = sum(scores)
avg = total / len(scores)
print(f'合計は{total}点、平均は{avg}点でした。')

 

結果 

合計は686点、平均は68.6点でした。

 

次は要素を削除してみます!

scores = [68,96,48,82,75,87]
scores.append(0)
scores.append(100)
scores.append(50)
scores.append(80)
total = sum(scores)
avg = total / len(scores)
print(f'合計は{total}点、平均は{avg}点でした。')

 

今はインデントさえ気にしておけばPythonは動いてくれると感じます。

コードはシンプルで見た目的にもスッキリしている。

Javaで書いたら何行になるんだろうと思いながらやってます。

毎日続けられたらいいですが、インプットはできてもアウトプットが難しいですね!

 

 

python学習開始

昨日2020年1月11日よりPython学習を開始することにしました。

ちょうど一年くらい前に全くのプログラミング自体やったことがない私でしたがprogateでPythonコースをやりました。当時はわけもわからず何を書いているのかもさっぱりわからず断念しました。

でも自分の作りたいものがpythonが一番適しているのではと考えているため、いつかは学習したいと思っていました。この一年間で初心者勉強会も行きました。学習のやり方を学んだだけで、特にそれから何もしていません。

今後は時間が許す限りでinputなんかおいといてoutputメインでやっていきたいです!

今からPython学習を始めたいと思っている方に見ていただければと考えています。

 

今回私が参考書に選んだのは『スッキリわかるPython入門』です。

この本に沿ってゆっくりではありますが、進めていきたいと思います。

 

 

 

【本日の学習成果】

・環境構築(Anaconda・JupyterLab)

・p4~p76(Pythonの基礎)

 

【感想】

一年前のことはほとんど忘れている模様。そしてJavaを少しかじっているせいか理解はしやすかったです。

書き方がシンプルで分かりやすいコード。

 

BMIを測定するコード

format関数がいいなと思いprint('BMIは{}です'.format(bmi))のように記載できるのはいいと思いました。しばらくは慣れが必要です。

またさらに短く記載するには、

h,w = int(input('身長は(㎝)は?>>'))/100,\
      float(input('体重は(㎏)は?>>'))
print(f'BMIは{w/h**2}です')

3行で書けるのは凄いですね!! 

本の通りにやれば一日で基本が身に付くのか?

Java初心者が『1日で基本が身に付くAndoroid超入門』を本当に一日で基本がわかるのかをやってみました。

私のスキル

Java ★☆☆☆☆☆

★1つもないでしょう( ´∀` )

 

 

開発ツール

Andoroid SDKアプリ開発に必要ないろいろなツールのまとめ

Gradle:Andoroid SDKを上手に扱ってくれる。プログラムや画像・音声などをビルドしてくれる。

Andoroid Studio

Javaのプログラムファイルの作成・編集

・画像や音声などの素材ファイルの管理

・画面レイアウトをわかりやすく作成

・プログラムファイルをちゃんとかけてるかAndoroid SDKやGradleに問い合わせる

・アプリの組み立てをGradleに依頼

pleiades日本語プラグインのセットアップ

 

などもろもダウンロードしているうちにぐだぐだやってしまい時間がかかりました。

 

f:id:niisan21:20200107151536j:plain

とりあえずこんな感じで仮想デバイスからプログラミングで一番初めのやつのHello Worldを出すことに成功しました!!

 

次にレイアウト設計

まずは用語から

ビュー:Androidの画面上に表示できる部品のこと。

二種類に分けられ以下のものとなる

ウィジェット:何らかの表現を行うためのビュー

ビューグループ:一つ以上のビューを取りまとめ、所定のルールで並べることができる

 

次にJavaプログラムの編集

まず、変数の宣言や型式の説明等・メソッド使用方法などが記載されています。

そんなこんなで第4章まではJava初心者の私には理解することはできました。

 

そしてメインの第5章としてビンゴアプリを作成するという今回のテーマがやってきました!!

なんとなくMath.random()やArrayListを使用するんだろうなと思っていたところやはりでてきました。

とりあえず完成!!!

f:id:niisan21:20200111201725j:plain

 

私も写経のような形になってしまい、初心者にはちょっと難しい印象でした。

ひとつひとつ理解しながら写経を繰り返し、解析していきたいと思います。

初めてのアプリ開発で他の書籍も全く見ていない状況なので評価はしがたいですが、AndroidStudioの基本的な操作やデザインの作り方などを学ぶことはできたと思います。

 

ちなみに私は三日ぐらいかけてやってしまいました😆

 

 

次回は『AWSをまったくの超初心者が学習する』を記載します!!

 

 

 

今年は飛躍する気がする

一か月半ぶりのブログ更新です。

反省と今後の備忘録として記載

 

昨年の振り返り

プログラミングに出会えたこと。

ITの知識が0から1にアップ。

 

昨年の12月は本当に忙しく更新が全くできない状況でした。

一つのプロジェクトを立ち上げから完成に至るまで一旦終えたことでとても充実したものでした。

この企画をさらにリリースに向けて本格化していく予定です。

 

今年の目標と今後

さて令和二年になり今年は年男なので、何か始めたい気持ちでいっぱいです。pythonを始めたいと思っているのですが、未だにjavaが未完成すぎて基礎からもう一度やり直そうか考え中。。。いややり直そう!!

一月はJavaSQL、二月からは本格的に基本情報リベンジに燃えよう!

あとは適度なブログ更新・twitterのつぶやきを増やすこと

ダイエットプラス筋トレ -4キログラム

一番大きな目標として会社設立

 

株について

株については持ちっぱなし作戦で、とりあえずポジは二つのみ。

今年の大テーマについて考えなければ!

あとはデイトレ復活??時間があれば検討したい。

 

 

 

今日は初詣に行っておみくじ引いてくるぞ!!

 

Javaを復習して行こう!!

最近はサーブレットJSPを学習しており、年内中に一つのWebアプリケーションを作るという目的があります。

ただ教科書を一周しただけなので特にこれで分かったということはありません。Javaに対しても本当にわかっているのか分からなくなってきたので、復習したいと思います。

 

メソッド:モノの機能をブロック内にまとめる

class 車

変数宣言 ナンバー;

 

 

TODOリストを作ろう

私はいつもだいたい決まった時間に起きて作業をします。

そのため、夜は21時から22時の間にできるだけ就寝するようにしています。

 

朝は2時~4時の間に起きるのですが、起きてからが作業が思ったようにうまくいかないことが多い。

 

そのため、やらなければいけないことを明確にできていないように感じてきました。

毎日の習慣として今後は一日のやることリストを作成する!

優先順位をつけ順番に終わるまで次のことはしないという決まりを作り、できなかったことは気にしない。

 

とりあえず、今日は

①すっきりわかるSQL入門を進める

Java千本ノックを一本

サーブレットJSP復習

④Gitについてまとめる

⑤個人の作業を進める

 

以上5点を目標にします!

Gitを知る!!

今回Gitを使いたいと思ったのはチームでの開発が始まるからです。バージョン管理システムも何個かあるが、今回はGitを使ってみようと思いました。

 

①Gitとは

Gitとは分散型バージョン管理システムのこと。といわれて何の事だと感じました。

理解したことは、Gitを使うことで更新履歴を保存したり、一度編集したものを元の状態に戻したり、編集個所の差分を表示したり、Gitに管理してもらうという仕組みです。

 

リポジトリ

ファイルやプログラムなどの何らかの保管場所のこと。管理したいディレクトリをリポジトリの中に置くことで、そのディレクトリ内のファイルやディレクトリの変更履歴を記録することができます。

 

リポジトリにはローカルとリモートの二つの種類に分けられます。

ローカルリポジトリ:それぞれのPC上で使用するリポジトリ

リモートリポジトリ:サーバーに配置し、複数人で共有するためのリポジトリ

 

③コミット

追加や変更したいファイルの内容をリポジトリに反映させる処理のことです。

コミットを実行するとリポジトリ内では前回コミットしたときの状態から現座の状態までの差分を記録したものが作成される。

コミットをたどることで過去の変更履歴やその内容をしることができる。コミット実行時にはコミットメッセージが必須。

 

④ワークツリーとインデックス

実際に作業をしているディレクトリのことをワークツリーといいます。

そしてGitではリポジトリとワークツリーの間にインデックスというリポジトリにコミットする準備をするための場所があります

そのためコミットでファイルの状態を記録するためにはまず、インデックスにファイルを登録する必要があります。

 

 

まずは用語を覚えて実際に使えるようにしたいと考えてます。

チーム開発が少しでもスムーズにできるように理解を深めたいと思います。