くろまる社長 「python」学習日記 2020-07-07

 

2020-07-07

 

今日やったことリスト(座学)

 

 

学んだこと

  • インスタンスメソッドとは
    通常のメソッド
  • クラスメソッドとは
    クラスをインスタス化しなくても呼び出すことができるメソッド
  • スタティックメソッド
    クラスをインスタン化しなくても呼び出すことができる
    インスタンス化しても呼び出し可能
    ※ただ、selfや、clsなどのインスタンスやクラスを表す変数がいらない

調べたこと

 

 

今日やったコード一覧

  • instnce_method.py
    class Instance_methodClass:
    def __init__(self, x, y):
    self.x = x
    self.y = y
     
    #インスタンスメソッド
    def hoge_instacemethod(self, display_x = True, display_y = True):
    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 = False)
    #instance_classmethod.hoge_instacemethod(display_x = 0)

    """bool型はint型のサブクラス
    bool型、Trueは、1 Falseは、0と等価"""


  • instance_classmethod.py
    import datetime
    class DateClass:
    def __init__(self, year, month, day):
    self.year = year
    self.month = month
    self.day = day
     
    #クラスメソッド
    @classmethod
    def 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
    class Staticmethod_Class:

    #スタティックメソッド
    def hoge_staticmethod(x, y):
    return x + y

    #インスタンス化しないで呼び出し
    print(Staticmethod_Class.hoge_staticmethod(10,100))


    #インスタンス化からも呼び出せる
    static_class = Staticmethod_Class()
    print(Staticmethod_Class.hoge_staticmethod(100,1000))

 

 

 

 

 

 

くろまる社長 「python」学習日記 2020-07-02

 

2020-06-27

 

今日やったことリスト(座学)

  • クラス継承とは
  • メソッドとは
  • 新旧クラススタイルとは
  • クラスとは

学んだこと

 

調べたこと

 

今日やったコード一覧

  • class_file.py
    class Python_Class:
    def __init__(self, code, name):
    self.code = code
    self.name = name

    classes =
    classes.append(Python_Class(1,'test1'))
    classes.append(Python_Class(2,'test2'))

    for test_cls in classes:
    print('=== Class ===')
    print('code ->>' + str(test_cls.code))
    print('name ->>' + test_cls.name)
     
  • 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 = msg
    print('NewStyleClassBase: {}'.format(msg))
    #新スタイルのクラス継承
    class NewStyleClass(NewStyleClassBase):
    def __init__(self, msg):
    self.msg = msg
    print('NewStyleClass: {}'.format(msg))
    super().__init__(msg)
    NewStyleClass('method call') """


    class Spam:
    val = 100
    def 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

 

今日やったことリスト(座学)

学んだこと

 

調べたこと

今日やったコード一覧

  • 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

 

今日やったことリスト(座学)

  • 関数とは
  • 引数とは
  • 戻り値とは
  • メソッドとは

学んだこと

 

 

調べたこと

 

 

 

今日やったコード一覧

  • 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

 

調べたこと

 

 

今日やったコード一覧

  • Hello World.html
    <!DOCTYPE html>
    <html lang="java">
    <head>
    <meta charset="utf-8">
    <title>literal</title>
    </head>
    <body>
    //literal.jsファイルを呼び出し
    <script type="text/javascript" src="literal.js">
    <noscript>javascriptが利用できないブラウザです</noscript>
    </script>
    </body>
    </html>
  • literal.html
    <!DOCTYPE html>
    <html lang="java">
    <head>
    <meta charset="utf-8">
    <title>literal</title>
    </head>
    <body>
    //literal.jsファイルを呼び出し
    <script type="text/javascript" src="literal.js">
    <noscript>javascriptが利用できないブラウザです</noscript>
    </script>
    </body>
    </html>
     
  • literal.js
    window.alert("コンソールを確認してください");
     
    //constは定数
    const literal_number =0; //数値0というリテラル
    const literal_string = "mozi" //文字列moziとういうリテラル
    const literal_list = [0,1,3]; //配列[0,1,2]というリテラル
    console.log(literal_number);
    console.log(literal_string);
    console.log(literal_list);
  • type.html
    <!DOCTYPE html>
    <html>
    <head lang="ja">
    <meta charset="utf-8">
    <title>type</title>
    </head>
    <body>
    <script type="text/javascript" src="type.js">
    <noscript>javascriptが利用できないブラウザです</noscript>
    </script>
    </body>
    </html>
  • type.js
    window.alert("コンソールを確認してください");
     
    //typeofでデータ型がわかる
    console.log(typeof 0);
    console.log(typeof "mozi");
    console.log(typeof [0,1,3]);