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'