# エージェント集合操作(基本操作) ## add エージェント集合型変数にエージェントを追加する。 **add**(agt) - **agt** - 追加するエージェント。 ※「[集合型変数].[関数名]」の形で用いる
※Python標準の関数です。詳しくはPython公式ドキュメントを参照してください。
``` # エージェント集合peopleにエージェントtaroを追加する people.add(taro) ``` ## clear エージェント集合型変数の中身をクリアする。 **clear**() ※「[集合型変数].[関数名]」の形で用いる
※Python標準の関数です。詳しくはPython公式ドキュメントを参照してください。
``` # エージェント集合peopleの中身をクリアする people.clear() ``` ## copy エージェント集合型変数をコピーする。 **copy**() ※「[集合型変数].[関数名]」の形で用いる
※Python標準の関数です。詳しくはPython公式ドキュメントを参照してください。
``` # エージェント集合peopleをコピーしてpeople2を作成する people2 = people.copy() ``` ## count_agt 引数の指定に当てはまるエージェントの数を取得する。 **count_agt**(agttype=None, space=None, layer=None, only_alive=False) - **agttype** - 指定するエージェント種別。指定しない場合は全てのエージェント種別。 - **space** - 指定する空間。指定しない場合は全ての空間。 - **layer** - 指定するレイヤ。指定しない場合は全てのレイヤ。 - **only_alive** - killフラグが立っていないエージェントのみを指定するかどうか。初期値はFalse。 ※killフラグはkill_agt関数によって立てられる ``` # エージェント種別personのエージェント数を取得する n = count_agt(agttype=Universe.city.person) n = count_agt(agttype=Universe.city.person, only_alive=True) # killフラグが立っていないエージェント数を取得する ``` ## count_agtset エージェント集合型変数が保持しているエージェント数を取得する。 **count_agtset**(agtset) ``` # エージェント集合peopleのエージェント数を取得する n = count_agtset(people) ``` ## discard エージェント集合型変数から、指定したエージェントを削除する。 **discard**(agt) ※「[集合型変数].[関数名]」の形で用いる
※Python標準の関数です。詳しくはPython公式ドキュメントを参照してください。
``` # エージェント集合peopleからエージェントtaroを削除する people.discard(taro) ``` ## randchoice エージェント集合からランダムに1つのエージェントを取り出す。 **randchoice**(agtset) ``` # エージェント集合peopleからランダムに1つのエージェントを取り出し変数oneに格納する one = randchoice(people) ``` ## randsample エージェント集合からランダムに重複なく複数のエージェントを取り出す **randsample**(agtset, num) - **agtset** - 対象とするエージェント集合 - **num** - 取り出すエージェントの個数 ``` # エージェント集合peopleからランダムに2つのエージェントを取り出し変数pairに格納する pair = randsample(people) ```