くろまる社長 「python」学習日記 2020-07-07
2020-07-07
今日やったことリスト(座学)
- インスタンスメソッド
- クラスメソッド
- スタティックメソッド
学んだこと
- インスタンスメソッドとは
通常のメソッド - クラスメソッドとは
クラスをインスタス化しなくても呼び出すことができるメソッド - スタティックメソッド
クラスをインスタン化しなくても呼び出すことができる
インスタンス化しても呼び出し可能
※ただ、selfや、clsなどのインスタンスやクラスを表す変数がいらない
調べたこと
- Pythonの真偽値bool型(True, False)と他の型との変換・判定
https://note.nkmk.me/python-bool-true-false-usage/
- --- 基本的な日付型および時間型
https://docs.python.org/ja/3/library/datetime.html#timedelta-objects
今日やったコード一覧
- instnce_method.py
class Instance_methodClass:def __init__(self, x, y):self.x = xself.y = y#インスタンスメソッドif display_x:print('x is {}'.format(self.x))if display_y:print('y is {}'.format(self.y))instance_classmethod = Instance_methodClass(100,50)#instance_classmethod.hoge_instacemethod(display_x = 0)
"""bool型はint型のサブクラスbool型、Trueは、1 Falseは、0と等価""" - instance_classmethod.py
import datetimeclass DateClass:def __init__(self, year, month, day):self.year = yearself.month = monthself.day = day#クラスメソッド@classmethoddef date_classmethod(cls, date_fiff = 0):tody = datetime.date.today()d = tody + datetime.timedelta(days = date_fiff)return cls(d.year, d.month, d.day)
#インスタンス化しないで呼び出しdate_class0 = DateClass.date_classmethod()print(date_class0.year, date_class0.month, date_class0.day)
#インスタンス化しないで呼び出しdate_class1 = DateClass.date_classmethod(-10)print(date_class1.year, date_class1.month, date_class1.day)
#通常のインスタンスdate_class2 = DateClass(2020,7,2)print(date_class2.year, date_class2.month, date_class2.day) - instnce_staticmethod.py
くろまる社長 「python」学習日記 2020-07-02
2020-06-27
今日やったことリスト(座学)
- クラス継承とは
- メソッドとは
- 新旧クラススタイルとは
- クラスとは
学んだこと
- クラスとは
データ構造をつくるしくみ
※具体例
鯛焼き機→鯛焼きに中身を入れる→鯛焼きを焼く
(クラス) (インスタンス化) (インスタンス)
※参考サイト
https://aiacademy.jp/media/?p=131 - クラス継承
存続のクラスから新規作成したクラスに
変数定義や、メソッドを引き継ぐこと
※参考サイト
https://www.sejuku.net/blog/9598 - 新旧クラススタイルとは
オブジェクトを継承したクラス→新クラス
なにも継承しないクラス →旧クラス
※新旧クラスの違いがあるのはpython2系での話
※参考サイト
http://ichitcltk.hustle.ne.jp/gudon2/index.php?pageType=file&id=python_class_style.md#:~:text=%E6%96%B0%E3%82%B9%E3%82%BF%E3%82%A4%E3%83%AB%E3%81%AE%E3%82%AF%E3%83%A9%E3%82%B9%E3%81%AB,%E3%82%B9%E3%82%BF%E3%82%A4%E3%83%AB%E3%81%AE%E3%82%AF%E3%83%A9%E3%82%B9%E3%81%A8%E5%91%BC%E3%81%B6%E3%80%82
- メソッドとは
クラスに定義された関数のこと
※参考サイト
https://aiacademy.jp/media/?p=131
調べたこと
- [Sy] Visual Studio Code 内でターミナルを起動するショートカット(Mac)
https://utano.jp/entry/2018/01/visual-studio-code-terminal-window/
- Pythonのタプルとは一体?わかりやすく解説をしてみた
https://blog.codecamp.jp/python-tuple
- Pythonにおける複数行コメントの記述方法を現役エンジニアが解説【初心者向け】
https://techacademy.jp/magazine/30589
- [Python]kwargsの読み方って?【クワーグス】
https://yuki.world/kwargs-how-to-pronounce/
- "u"と "r"の文字列フラグは正確に何をしますか、そして生の文字列リテラルとは何ですか?
https://www.it-swarm.dev/ja/python/quotuquot%E3%81%A8-quotrquot%E3%81%AE%E6%96%87%E5%AD%97%E5%88%97%E3%83%95%E3%83%A9%E3%82%B0%E3%81%AF%E6%AD%A3%E7%A2%BA%E3%81%AB%E4%BD%95%E3%82%92%E3%81%97%E3%81%BE%E3%81%99%E3%81%8B%E3%80%81%E3%81%9D%E3%81%97%E3%81%A6%E7%94%9F%E3%81%AE%E6%96%87%E5%AD%97%E5%88%97%E3%83%AA%E3%83%86%E3%83%A9%E3%83%AB%E3%81%A8%E3%81%AF%E4%BD%95%E3%81%A7%E3%81%99%E3%81%8B%EF%BC%9F/968305156/
- VS Codeで指定範囲をコメントにしたり戻したりするには
https://blog.hatena.ne.jp/kuromaru0913/kuromaru0913.hatenablog.com/edit
今日やったコード一覧
- class_file.py
- class_file0.py
class Country:def __init__(self, country_name):self.country_name = country_name
class City(Country):def __init__(self, country_name, city_name):super().__init__(country_name)self.city_name = city_name
classes =classes.append(City('Japan','Tokyo'))classes.append(City('USA', 'Washington, DC'))
for country_city in classes:print('=== Class ===')print('country_name -->' + country_city.country_name)print('city_name -->' + country_city.city_name) - class_file1.py
""" #親スタイルクラスclass NewStyleClassBase(object):def test_method(self, msg):print('NewStyleClassBase: {}'.format(msg))#新スタイルのクラス継承class NewStyleClass(NewStyleClassBase):def test_method(self, msg):print('NewStyleClass: {}'.format(msg))super().test_method(msg)new = NewStyleClass()new.test_method('method call') """
"""#親スタイルクラスclass NewStyleClassBase:def test_method(self, msg1, msg2):print('NewStyleClassBase_No1: {} NewStyleClassBase_No2: {}'.format(msg1,msg2))#新スタイルのクラス継承class NewStyleClass(NewStyleClassBase):def test_method(self, msg1, msg2):print('NewStyleClass_No1: {} NewStyleClass_No2: {}'.format(msg1,msg2))super().test_method(msg1, msg2)new = NewStyleClass()new.test_method('method call', 'method calls') """
"""#親スタイルクラスclass NewStyleClassBase(object):def __init__(self, msg):self.msg = msgprint('NewStyleClassBase: {}'.format(msg))#新スタイルのクラス継承class NewStyleClass(NewStyleClassBase):def __init__(self, msg):self.msg = msgprint('NewStyleClass: {}'.format(msg))super().__init__(msg)NewStyleClass('method call') """
val = 100def ham(self):self.egg('call method')
def egg(self,msg):print("{0}".format(msg))print(("{0}".format(self.val)))
spam.ham()
くろまる社長 「python」学習日記 2020-06-30
2020-06-30
今日やったことリスト(座学)
- 可変引数
- ポインター
学んだこと
- ポインターとは
プログラムを実行する際にメモリ上にある変数や
関数などが置かれた場所を示すアドレスのこと
※参考サイト
http://e-words.jp/w/%E3%83%9D%E3%82%A4%E3%83%B3%E3%82%BF.html
- 可変引数
関数やメソッドの引数が任意の個数になっている引数のこと
※参考サイト
https://ja.wikipedia.org/wiki/%E5%8F%AF%E5%A4%89%E9%95%B7%E5%BC%95%E6%95%B0
https://note.nkmk.me/python-args-kwargs-usage/
調べたこと
- [Sy] Visual Studio Code 内でターミナルを起動するショートカット(Mac)
https://utano.jp/entry/2018/01/visual-studio-code-terminal-window/
- Pythonのタプルとは一体?わかりやすく解説をしてみた
https://blog.codecamp.jp/python-tuple
- Pythonにおける複数行コメントの記述方法を現役エンジニアが解説【初心者向け】
https://techacademy.jp/magazine/30589
- [Python]kwargsの読み方って?【クワーグス】
https://yuki.world/kwargs-how-to-pronounce/
- "u"と "r"の文字列フラグは正確に何をしますか、そして生の文字列リテラルとは何ですか?
https://www.it-swarm.dev/ja/python/quotuquot%E3%81%A8-quotrquot%E3%81%AE%E6%96%87%E5%AD%97%E5%88%97%E3%83%95%E3%83%A9%E3%82%B0%E3%81%AF%E6%AD%A3%E7%A2%BA%E3%81%AB%E4%BD%95%E3%82%92%E3%81%97%E3%81%BE%E3%81%99%E3%81%8B%E3%80%81%E3%81%9D%E3%81%97%E3%81%A6%E7%94%9F%E3%81%AE%E6%96%87%E5%AD%97%E5%88%97%E3%83%AA%E3%83%86%E3%83%A9%E3%83%AB%E3%81%A8%E3%81%AF%E4%BD%95%E3%81%A7%E3%81%99%E3%81%8B%EF%BC%9F/968305156/
- VS Codeで指定範囲をコメントにしたり戻したりするには
https://www.atmarkit.co.jp/ait/articles/1806/22/news034.html
今日やったコード一覧
- argument1.py
""" *argsは関数内においてタプルとして引き渡されるタプルは要素を追加、変更、消去できない"""
def args_func(*args):print(args)args_func(3,6,9,13,26,39)
def args_func0(code, name, *args):print(code, name)print(args)args_func0(13, 'argument', 'argument_no1','argumet_no2')
- argument2.py
""" *kwargsは関数内においてディクショナリとして引き渡される"""def kwargs_func(**kwargs):print(kwargs)kwargs_func(code=13, name='pythonizm') - argument3.py
""" **kwargsは通常の引数と併用することができるまた、「 * 」を使用した可変長引数と併用することもできる"""
def kwargs_func0(code, name, kana, *args, **kwargs):print(code, name, kana)print(args)print(kwargs)kwargs_func0(13, 'pythonizm', u'パイソンイズム','argument', 'argumet_no1', 'argument_no2',email='xxx', city='Shizuoka')
くろまる社長 「python」学習日記 2020-06-27
2020-06-27
今日やったことリスト(座学)
- 関数とは
- 引数とは
- 戻り値とは
- メソッドとは
学んだこと
- 関数とは
データを受け取り、定められた独自の処理を設定し
その結果を返すしくみのこと
※独自関数と、組み込み関数(pythonで言うと、print,len,input)と2種類ある
※参考サイト
https://aiacademy.jp/media/?p=127 - 引数とは
プログラムや関数などに入れる値
※参考サイト
https://wa3.i-3-i.info/word1442.html
- 戻り値とは
プログラムや関数などから戻ってくる値
参考サイト
https://wa3.i-3-i.info/word15003.html
- メソッドとは
変数やClassなどの値につけて呼び出すことができる
参考サイト
https://gammasoft.jp/blog/difference-method-vs-function/
https://wa3.i-3-i.info/word1906.html
調べたこと
- python3実行結果が何を示しているのかを教えてください
https://teratail.com/questions/182579
- ユニットテストフレームワーク
https://docs.python.org/ja/3/library/unittest.html
今日やったコード一覧
- func.py
#関数の書き方def test_func():print('call test_func')#関数呼び出しtest_func() - argument.py
#関数に引数を指定def argument_func(num1, num2, count):if count == 1:print('足し算開始')print(num1 + num2)elif count == 2:print('引き算開始')print(num1 - num2)elif count == 3:print('掛け算開始')print(num1 * num2)elif count == 4:print('割り算開始')print(num1 / num2)else:print('計算は行われませんでした')
#引数の呼び出しargument_func(13, 26 , 3)
- argument0.py
#第3引数の初期値を1とするdef argument_func(num1, num2, count = 1):if count == 1:print('足し算開始')print(num1 + num2)elif count == 2:print('引き算開始')print(num1 - num2)elif count == 3:print('掛け算開始')print(num1 * num2)elif count == 4:print('割り算開始')print(num1 / num2)else:print('計算は行われませんでした')#第3引数は初期値としてあるので省略できるargument_func(13, 26) - func_method.py
#関数def test_func():print('call test_func')
class TestClass:#メソッドdef test_method():print('call test_method')
print('------------------')print(test_func)print(TestClass.test_method)
print('------------------')print(type(test_func))print(type(TestClass.test_method))
print('------------------')t = TestClass()print(test_func)print(t.test_method)
くろまる社長 「javascript」学習日記 2020-06-25
2020-06-25
今日やったことリスト(座学)
学んだこと
- ターミナルとは
コンピュータにコマンドを実行させることが
できる組み込みソフトフェア - PATH変数とは
必要な実行ファイルがどこのディレクト に
あるか指定するもの - プロトコルとは
異なるコンピュータ同士を繋げる手法 - インターネットとは
ネットワークとネットワークを結んだもの
※当初のネットワークは
企業内で閉ざされ状態だった - ハイパーテキストとは
テキストに構造を持たせたもの - Webとは
ハイパーテキストを利用して、
インターネットの情報を繋ぐシステム
※参考サイト
http://www.toha-search.com/it/web.htm
調べたこと
- typeof
https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Operators/typeof
- Visual Studio Code上でターミナル起動
https://qiita.com/luccafort/items/b721d03dfb9630b33d89
- シェル】ターミナル画面をリセット(クリア)するコマンド&ショートカットキー
https://wayohoo.com/unix/how-to-clear-the-terminal-screen.html
今日やったコード一覧
- Hello World.html
<!DOCTYPE html><head><title>literal</title></head><body>//literal.jsファイルを呼び出し</script></body></html>
- literal.html
<!DOCTYPE html><head><title>literal</title></head><body>//literal.jsファイルを呼び出し</script></body></html> - literal.js
- type.html
<!DOCTYPE html><html><head lang="ja"><title>type</title></head><body></script></body></html> - type.js
window.alert("コンソールを確認してください");//typeofでデータ型がわかるconsole.log(typeof 0);console.log(typeof "mozi");console.log(typeof [0,1,3]);