Program学習 Python

Pythonの基礎(変数宣言/演算/文字列扱い/組み込みメソッドなど)

Program学習

以前はよくPythonをメインで使っていたのですが、最近はPythonではなくjavascriptをメインを使う業務が多くて、Python基礎的な使い方について忘れ気味だったので自分ようにメモを残しておきます。

Python基礎(メモ)

Windowですが、Pythonのインストール方法は以下にまとめていますので参考にどうぞ

Pythonのコーディングで利用するエディタはPytcharmがオススメです。

変数

・Pythonでは変数の型宣言は不要、自動的に決定される
・int(数値)/str(文字列)/bool(True/False)など
・型はtype使って確認することができる
・文字列ではシングルクォートとダブルクォートどちらでもOK
・型宣言することもできる、コードの見やすくしたい時があれば使う
・変数の先頭には数字使えない

num = 1
name = "1"
name2 = '1'
is_true = True

print(num,type(num))
print(name,type(name))
print(name2,type(name2))
print(is_true,type(is_true))

// 結果
1 <class 'int'>
1 <class 'str'>
1 <class 'str'>
True <class 'bool'>

文字列

・文字列ではシングルクォートとダブルクォートどちらでもOK
・\でエスケープになる
・\nで改行

word1 = "This is a pen."
word2 = 'This is a pen.'
word3 = "This is a \"pen\""
word4 = "This is a pen.\nThis is an apple."

print(word1)
print(word2)
print(word3)
print(word4)

// 結果
This is a pen.
This is a pen.
This is a "pen"
This is a pen.
This is an apple.

・rをつけるとRow扱いになる(\nとかでも改行されない)

word5 = "C:\\nane\name"
word6 = r"C:\\nane\name"

print(word5)
print(word6)

// 結果
C:\nane
ame
C:\\nane\name

・行をまたぐ場合は”””で囲う
・改行を調整するのには\を使う

print("=====================")
print("""
line1
line2
line3
"""
)
print("=====================")

print("--------------------")

print("=====================")
print("""\
line1
line2
line3\
"""
)
print("=====================")

// 結果
=====================

line1
line2
line3

=====================
--------------------
=====================
line1
line2
line3
=====================

文字列処理(インデックス操作)

・先頭の文字の[0]で取得できる(インデックス)
・先頭から2番目の文字は[1]で取得できる
・最後の文字は[-1]で取得できる
・最後から2番目の文字は[-2]で取得できる

sentence = 'My name is Mike.'

print(sentence[0])
print(sentence[1])
print(sentence[-1])
print(sentence[-2])

// 結果
M
y
.
e

・文字列の範囲を指定して切り取りたい場合は[1:10]とかで指定できる
・範囲指定の際に先頭からを省略できる[:10]
・範囲指定の際に最後までからを省略できる[10:]
・文字列の置き換えはこの方法ではできない。※word[1]=”a”とかで置き換えはできない。
・文字列の連結では+を使う

sentence = 'My name is Mike.'

print(sentence[0:7])
print(sentence[3:7])
print(sentence[:7])
print(sentence[8:])

new_sentence = 'Hi! ' + sentence[:11] + "is Ken."
print(new_sentence)

// 結果
My name
name
My name
is Mike.
Hi! My name is is Ken.

・文字列の長さはlenで取得できる

sentence = 'My name is Mike.'
print(len(sentence))
print(len(sentence),type(len(sentence)))

//結果
16
16 <class 'int'>

文字列操作(メソッドを使う)

・startswithで先頭の文字列かの判定

sentence = 'My name is Mike.'

print(sentence.startswith('M'))
print(sentence.startswith('A'))
print(sentence.startswith('m'))
print(sentence.startswith('My'))

// 結果
True
False
False
True

・findで文字列のインデックスの位置を教える
・rfindでは文字列のインデックスの位置を教える(後ろから)

sentence = 'My name is Mike.'

print(sentence.find('i'))
print(sentence.rfind('i'))

//結果
8
12

文字列操作(Format)

・formatを使うことで文字列を代入できる
・複数の値も代入出来る。{}を複数指定

sentence = 'My name is Mike.'

print("My name is {}.".format('Mike'))
print("My name is {}.".format('Ken'))
print("My name is {}. Your name is {}.".format('Mike','Ken'))

//結果
My name is Mike.
My name is Ken.
My name is Mike. Your name is Ken.

・インデックス指定で位置を指定できる。{1}{2}など
・{1}のインデックスの代わりに自由に文字列ラベルも指定できる。

sentence = 'My name is Mike.'

print("My name is {0}. Your name is {1}.".format('Mike','Ken'))
print("My name is {0}. Your name is {1} {2}.".format('Mike','Ken','Yamada'))
print("My name is {1}. Your name is {0}.".format('Mike','Ken'))
print("My name is {name}. Your name is {familyname} {yourname}.".format(name='Mike',yourname='Ken', familyname='Yamada'))

// 結果
My name is Mike. Your name is Ken.
My name is Mike. Your name is Ken Yamada.
My name is Ken. Your name is Mike.
My name is Mike. Your name is Yamada Ken.

・Python 3.6以降ではformatではなく、f-stringsを使える。f-stringsのほうが処理が早くてよい模様

a = 'Mike'
print(f'My name is {a}.')
 
name, yourname, familyname = 'Mike','Ken','Yamada'
print(f'My name is {name}.Your name is {yourname} {familyname}.')

//結果
My name is Mike.
My name is Mike.Your name is Ken Yamada.

Pythonのオススメ勉強方法

Pythonの学習については、これまでもいくつかおすすめの書籍などを挙げていたこともありますが、今はまずは「Udemy」が何よりもオススメです。

Pythonの以下のコースは合計で28.5時間のビデオ講座があって、それらを受講するだけで、Pythonの基礎から応用まで学ぶことができます。

そして何より安いです!!
Udemyでは頻繁にセールが開催されているので、セールのタイミングで購入すれば2,000円以内で済みます。(※セールごとに割引率が少し違うみたいです)
書籍より安いビデオ講座があるとは・・・

現役シリコンバレーエンジニアが教えるPython 3 入門 + 応用 +アメリカのシリコンバレー流コードスタイル

私も受講してみましたが、かなり幅広く網羅されており、おそらくこれ以上の教材はないと思いますので、絶対にUdemyはおすすめです。

今回は以上となります。

コメント

タイトルとURLをコピーしました