python学習 2時間(累計2時間)

Udamyの学習

今日の範囲はsection2 python の基本まで

学習時間:21:00 ~ 22:58

感想:最初の方だからまだ簡単だった。

   動画を視聴→コードを写経&コメント入れるって感じだったから思ったより

   時間がかかった。

   普通に2時間とか時間がかかるからやばい。

   写経は今回の一回のみとして動画自体は3〜5回くらい

   見直したい。      

   ビデオ時間が28.5時間だから今月中8/31までに1回目は終わらせたいなぁ・・・

    

計算

足し算

>>> 2 + 2
4

 

掛け算
>>> 50 - 5 * 6
20

 

データ型の確認
>>> type(1)
<class 'int'>
>>> type(1.6)
<class 'float'>

 

.6ってかきかたでも0を保管してくれる
>>> .6
0.6

 

割り算 
>>> 17/3
5.666666666666667

 

割り算 整数部のみ
>>> 17 // 3
5

 

割り算あまり
>>> 17 % 3
2

 

掛け算
>>> 5 * 5
25

 

べき乗
>>> 5 ** 5
3125

変数に数値入れても大丈夫

>>> x = 5
>>> x
5
>>> y = 10
>>> x * y
50

 

宣言してない引数はエラー
>>> a
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
NameError: name 'a' is not defined

 

有効桁数
>>> pie = 3.1415151515151515151
>>> round(pie,2)
3.14

 

終了
>>> exit()

 

#math ライブラリインポート
import
math
result = math.sqrt(25)
print(result)

y = math.log2(10)
print(y)

print(help(math))

 

文字列

s = 'test'

#シングルクォーテーションもダブルクォーテーションも動作は同じ
print('hello')
print("hello")

#文字列中で' を使いたいときは"でやるみたいな
print("I don't know")
#バックスラッシュをつかって文字列の扱い色々
print('I don\'t kow')
print('say "I don\'t know"')
print("say \"I don't know\"")

#\nで改行
print('hello.\nHow arr you?')
#文中で\nを使いたい場合など文字列をそのまま利用したいときは r' のかたちでやる
print(r'C:\name\name')

#"""のような形で書くことで改行させることができる
#また、\を下記のように入れることで不要な空白の削除が可能
print("###############")
print("""\
line1
line2
line3\
""")
print("###############")

#文字列に も繰り返し表示できる
print('Hi.' * 3 + 'Mike.')

#連結も可能
print('Py' + 'thon')
print('Py''thon')

#文字列の管理
word = 'python'
#1文字目
print(word[0])
#2文字目
print(word[1])
#最後の1文字
print(word[-1])
#1〜3文字目
print(word[0:2])
#3〜6文字目
print(word[2:5])
print('###################')
#1〜3文字目
print(word[0:2])
#番号を書かないことで省略が可能
print(word[:2])
print('###################')
#末尾も同じく
print(word[2:])
print('###################')
#文字の置き換え
word = 'j' + word[1:]
print(word[:])
n = len(word)
print(n)

文字のメソッド

s = 'My name is Mike . Hi Mike.'
print(s)
#My から始まっているか判定
is_start = s.startswith('My')
print(is_start)
is_start = s.startswith('X')
print(is_start)

print('#######################')

#任意の文字列がどこから始まっているか
print(s.find('Mike'))
#任意の文字列がどこから始まっているか(末尾から検索
print(s.rfind('Mike'))
#文字列の個数
print(s.count('Mike'))
#文章先頭文字のみ大文字
print(s.capitalize())
#文章内の単語の先頭文字のみ大文字
print(s.title())
#文字列全て大文字
print(s.upper())
#文字列全て小文字
print(s.lower())
#任意の文字列置き換え
print(s.replace('Mike', 'Nancy'))

 

文字列の代入

---.format() で文字列内の{} に代入できる

>>> 'a is {}' .format('a')
'a is a'
>>> 'a is {}' .format('test')
'a is test'

--- 複数の文字列も可能

>>> 'a is {} {} {}' .format(1, 2, 3)
'a is 1 2 3'

--- 順番をつけることも

>>> 'a is {0} {1} {2}' .format(1, 2, 3,)
'a is 1 2 3'

---順番を入れ替えることも

>>> 'a is {2} {1} {0}' .format(1, 2, 3)
'a is 3 2 1'

---数字だけじゃない

>>> 'My name is {0} {1}' .format('Tanaka', 'Taro')
'My name is Tanaka Taro'
---引数を宣言すると読みやすい
>>> 'My name is {name} {family} .Watashi ha {family} {name}' .format(name = 'Tanaka', family = 'Taro')
'My name is Tanaka Taro .Watashi ha Taro Tanaka'

---数値

>>> 1
1

---文字列
>>> '1'
'1'

---str()を使うことで文字列に
>>> x = str(1)
>>> x
'1'
>>> type(x)
<class 'str'>

---不動小数点型だって文字列に

>>> str(3.14)
'3.14'

---boolean型だって文字列
>>> str(True)
'True'