タグ

methodに関するU1and0のブックマーク (4)

  • スタティックメソッドは要らない子? - atsuoishimoto's diary

    Pythonでは、クラス内で定義することの出来るメソッドが三種類用意されている。メソッド・クラスメソッド・スタティックメソッドの3種類だ。それぞれどんな特徴を持っているのだろうか? メソッド まず、メソッドはおなじみのインスタンスメソッドで、第一引数としてインスタンスを受け取り、呼び出す時には必ずインスタンスが必要となる。 class Foo(object): # メソッド def method(self, arg): pass Foo().method("arg") #OK Foo.method("arg") #これはエラー クラスメソッド クラスメソッドは第一引数としてクラスオブジェクトを受け取り、インスタンスが無くとも呼び出すことが出来る。 class Foo(object): # クラスメソッド @classmethod def clsmethod(cls, arg): pass

    スタティックメソッドは要らない子? - atsuoishimoto's diary
  • Python Tips: 既存のクラスにインスタンスメソッドを追加したい

    Pythonで、既存のクラスにインスタンスメソッドを追加する方法をご紹介します。 既存のクラスにメソッドを追加するには次の手順を踏みます。 まず関数を別途定義してから その関数名をクラスのアトリビュートにする 具体例を見てみます。 # __init__ メソッドだけを備えた Dog クラス class Dog(object): def __init__(self, name): self.name = name # 以下で Dog クラスに count_number というインスタンスメソッドを追加する # 01 まずは関数を定義 def count_number(self): print "%s counts: one! one!" % self.name # 02 定義した関数をクラスのアトリビュートに追加 Dog.count_number = count_number # 結果 ta

    Python Tips: 既存のクラスにインスタンスメソッドを追加したい
    U1and0
    U1and0 2016/11/21
    クラスにメソッド追加Dog.count_number = count_number
  • 文字列の分割・結合 split, join,rsplit

    split: 文字列の分割 str.split(sep) sepを区切り文字として、単語を分割してリストにする。 区切り文字が指定されない場合は、スペース、タブ、改行文字列で分割される特殊なルールになる。 >>> "hello,world,foo,bar".split(",") ['hello', 'world', 'foo', 'bar'] >>> "hello,world, foo, bar".split(", ") >>> "hello world\tfoo\nbar".split() ['hello', 'world', 'foo', 'bar'] 第2引数で区切り文字で分割する回数を指定することができる。 >>> "aaa,bbb,ccc".split(",", 1) #分割回数は1回に制限。('bbb,ccc'は分割されていない) ['aaa', 'bbb,ccc'] 正規表現

    文字列の分割・結合 split, join,rsplit
    U1and0
    U1and0 2016/05/15
    join: 文字列シーケンスの連結 sep.join(seq) sepを区切り文字として、seqを連結してひとつの文字列にする。 >>> ":".join(["a", "b", "cde"]); 'a:b:cde' シーケンス.joinではなく、区切り文字列.join(シーケンス)なので注意。
  • リストに指定した値と同じ要素が含まれているか確認する

    作成済みのリストに指定した値と同じ要素が含まれているかどうか、含まれている場合の要素の数や要素のインデックスを取得する方法について解説します。要素が含まれているかどうかの確認には in 演算子、要素の数を確認するには count メソッド、インデックスを確認するには index メソッドを使用します。

    リストに指定した値と同じ要素が含まれているか確認する
    U1and0
    U1and0 2016/05/15
    リストオブジェクト.index(オブジェクト) 引数で指定したオブジェクトが持つ値が要素の中に含まれている場合は、最初の要素のインデックスを返します。 具体的には次のように記述します。 list = ["A", "B", "C"] print list.index("B"
  • 1