【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の株は既に持っています

次のようにも書けます。

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

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

返信を残す

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

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください