【Python入門】基本を復習

こんにちは。今回はPythonの基本で曖昧に記憶している点を復習し、備忘録として残します。

環境:Mac、Python3

個数を集計する


stocksの銘柄を購入したら、buyに記録しています。
1回に1株のみ購入します。

次のように加算されました。

{‘Apple’: 3, ‘Facebook’: 1, ‘Netflix’: 2}

 

for文で要素を確認し、if文で振り分ける。


for文とif文を組み合わせて使います。

会社名が6文字の会社をPythonの関数lenを使用して取得します。


このような結果になりました。

Amazon
Google 

 

空の辞書に値を追加する


空の辞書usa_stocksへ、for文を使って値を追加していきます。
リストboughtの値を追加していきます。


このような結果になりました。

{‘Apple’: 3, ‘Google’: 2, ‘Facebook’: 1} 



for文で結果を縦に表示させます。


前述の結果は見づらいので、for文を使用して縦一覧に並べます。


このように表示されました。

Apple:3
Google:2
Facebook:1

 

Python:from collections import Counter


collectionsモジュールのCounterを使用すると、簡潔に記載できます。


このような結果になります。

{‘Apple’: 3, ‘Google’: 2, ‘Facebook’: 1}

 

Python:ファイルを開く


inputディレクトリにcsvファイルを作成します。

プログラムを使用して、ファイルの中身を表示させましょう。

手順は次の通りです。

1.ファイルを開く
2.ファイルのデータを読み込む
3.表示させる。
4.ファイルを閉じる。

open(ファイルのパス, 文字コードの指定)を使用します。

utf-8は、このcsvファイルがutf-8で作成されている為です。
encodingを指定しないと、プラットフォームに依存した文字コードとなります。
文字化けが起きる可能性があります。

このように表示されました。

AMZN,1600
AAPL,152
MSFT,102
NFLX,337
NVDA,148
GOOGL,1056

ファイルを開く2


Pythonの構文with()を使用してファイルを開くことをお勧めします。

withを使用すれば、close()を書く必要が無くなります。

withの次の行は、インデントさせます。


結果は前述と同じですので、記載を省いています。


for文を使用してファイルを読み込みます。



次のように1行づつスペースができます。

AMZN,1600

AAPL,152

MSFT,102

NFLX,337

NVDA,148

GOOGL,1056

print文は、データを自動で改行します。
for文は、データの末尾に改行文字\nを設けます。
よって、改行が2回行われています。

 

Python:rstripを使用して改行文字を削除します。


rstrip()メソッドは、文字列の末尾の空白、タブ、改行を削除します。

このようになります。

AMZN,1600
AAPL,152
MSFT,102
NFLX,337
NVDA,148
GOOGL,1056

 lstrip()は、文字列の先頭の空白、タブ、改行を削除します。

strip()は、文字列の先頭と末尾の空白、タブ、改行を削除します。


splitを使用して文字列をリストにします。


Pythonの関数split()を使用すると、文字列をリストに変えることができます。
カンマで区切るように指定しました。


次のような結果になります。

[‘a’, ‘b’, ‘c’, ‘d’, ‘e’, ‘f’]

 

splitした結果をfor文で一覧表示にします。


半角で区切られているデータを半角スペースで区切ります。

for文を使用して一覧表示にしています。


次のようになります。

a
b
c
d
e
f

 

ファイルのデータに言葉を添えて、一覧表示する。


row.rstrip().split(,)では、末尾の文字コード削除とカンマ区切りを一度に指定しています。

.split()は、リストを返すので、rstrip()の前に記述してはいけません。

次のように表示されます。

AMZNの株価は1600ドルです
AAPLの株価は152ドルです
MSFTの株価は102ドルです
NFLXの株価は337ドルです
NVDAの株価は148ドルです
GOOGLの株価は1056ドルです

 

読み込んだデータの数字に10%を掛ける


ファイルから読み込んだデータは文字列なので、数値に変換してから計算します。


次のように表示されます。

AMZNの株は1760ドルで利食いましょう
AAPLの株は167ドルで利食いましょう
MSFTの株は112ドルで利食いましょう
NFLXの株は370ドルで利食いましょう
NVDAの株は162ドルで利食いましょう
GOOGLの株は1161ドルで利食いましょう 

 

読み込んだデータに特定の名前が存在するか確認します


ファイルから読み込んだデータに、AAPLまたはAMZNが存在するかを確認します。


次のような結果となります。

AMZNの株は既に持っています
AAPLの株は既に持っています

次のようにも書けます。

いかがでしたでしょうか?

基本から実践的な部分まで復習してみました。

返信を残す

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

This site uses Akismet to reduce spam. Learn how your comment data is processed.