Gang ParadeとBiSで覚えるPythonの配列操作

Brand-new Idol Society2

GW真っ只中。
部屋の掃除したり、洗濯したり、シュタゲを観返したり、PCをいじったりしております。

一昨日、BiSの無銭を中野のフェスで見てきました。
先日脱退したももらんどの穴を感じさせない、近々始まる二部制に至る現体制の完成度を見せつけるパフォーマンス。
いや、素晴らしい。

それにしてもアイドルってのは、入れ替わりが激しい。
BiSにしろ2018年は、プー・ルイが抜け、ももらんどが抜けて。
代わりに今度は4名加入して、今度は2グループに別れる大転換点。

ふと、これは配列操作で考えるとなかなか面白いのでは?と思い、少し苦手なPythonで書いてみることにしました。
旧BiS解散からGangParadeに至る遥かな道程とPythonの基本を混ぜたややこしい記事が以下。

できれば動画聴きつつ試しにコード打っていただければ。
「アイドルの事情なんて知らねーよ」って方は>>>Pythonの辺りだけ読めば。
にしてもPython慣れないなぁ……。




【スポンサーリンク】



2014

プー・ルイを中心に結成されたアイドルグループBiSは、2014年7月解散。
残ったのがプー・ルイとカミヤサキの2名。

プー・ルイはソロやLUI FRONTiC 赤羽JAPANとしての活動を開始。
一方、カミヤサキはミズタマリとユニット「プラニメ」を結成。

>>>Python appned()
# BiS解散。
# カミヤサキがプラニメを結成。

BiS = []
Dattai = []
Puranime=['カミヤサキ']
Puranime.append('ミズタマリ')

要素"カミヤサキ"に"ミズタマリ"をappendしたプラニメ。
pythonの配列に加える方法はいくつかありますが、appendはリストの末尾に要素を一つ追加するメソッド。
幾つか追加の仕方はありますが、appendは追加できる要素が「一つ」なのがポイントかと。

2015

P.O.P

2015年4月、ミズタマリがプラニメを脱退。
そしてオーディションを行い4人加入。
グループ名をプラニメからPOPに改名。

>>>Python pop() extend()
# ミズタマリ脱退
Puranime.pop()
Dattai.append('ミズタマリ')
# 新メンバー加入、グループ名がPOPに
Puranime.extend(['シグサワアオ', 'イヌカイマアヤ', 'ヤママチミキ', 'ユメノユア'])
POP = Puranime

.pop()は、配列の要素を削除するメソッド。
()にインデックスを指定すればその対象要素を、省略すれば最後の要素を。

.extend()はイテラブルの要素を追加。
ミズタマリの際に使用した.append()と違い、複数の要素が追加可能だそうで。

2016

プラニメ→POPに続いてきたグループは、新メンバーを加え現在のGangParadeの基礎形に。
2016年、グループ名をPOPからGANGPARADEに改名。
シグサワアオ、イヌカイマアヤの2名がグループを脱退。

そして新メンバーとしてキャンマイカが加入。

>>>Python del
# 2016年、グループ名をPOPからGANGPARADEに改名
# シグサワアオ、イヌカイマアヤがグループ脱退
Ganpare=POP
del Ganpare[1:3]
Dattai.extend(['シグサワアオ', 'イヌカイマアヤ'])

# 新メンバーとしてキャンマイカ加入
Ganpare.append('キャンマイカ')

delは配列の要素をインデックス指定して削除できる。
インデックスにスライスを使い、要素を消すのも可能。

劇場版 BiS誕生の詩
劇場版 BiS誕生の詩
posted with amazlet at 18.05.01
(2017-03-23)
売り上げランキング: 6,335


2016年、BiSが再結成をすることに。
オーディションが行われ合格したのは、旧メンバーのプールイと新メンバーが4人。

オーディションから脱落したメンツによってBiSの公式ライバルSiSが結成。
しかしスタッフの不手際により一度のライブだけでSiSは解散。
この辺の詳細は、映画になってる。

WHO KiLLED IDOL ? –SiS消滅の詩–
(2017-03-23)
売り上げランキング: 7,117

そして元SiSの3名は、GangParadeに合流。
この采配がその後、上手く転がる切っ掛けになった。

>>>Python extend()
# BiS再結成のためのオーディションが行われる
# オーディションから落ちたメンバーらによってBiSの公式ライバルSiSが結成されるも解散
# SiSメンバーがGangParadeに編入

BiS = ['プー・ルイ','ゴ・ジーラ','キカ・フロント・フロンタール','ペリ・ウブ','アヤ・エイトプリンス']
SiS = ['ココ・パーティン・ココ','テラシマユウカ','ユイ・ガ・ドクソン','ヒラノノゾム(仮)']
SiS.pop()
Ganpare.extend(SiS)

配列に.extend()で他配列を追加。
.extend()だと入れ子にならないんですね。

2017


2017年4月、GangParadeのカミヤサキとBiSのアヤエイトプリンスが期間限定レンタルトレードに
BiSにパン・ルナリーフィ、ももらんどが加入

>>>Python
BiS[4]='カミヤサキ'
BiS.extend(['パン・ルナリーフィ','ももらんど'])
Ganpare[0]='アヤ・エイトプリンス'

配列のインデックス番号を指定し、要素を書き換える。
インデックス番号が0から始まるところに注意。

2018

natalie.mu
プールイが卒業、レンタルトレード終了。
プー・ルイが卒業して「新体制になる」というのは、この流れを見ればわかるように旧BiSから参加しているのがプー・ルイとカミヤサキだけだからなんですよね。
元BiSの2人が新BiSから抜けることで、BiSは新しいグループになった、と。
そういうコンテクストは、点ではなく流れで見ないとわからないですが。

>>>Python remove() insert()
#2018年、3月プー・ルイがBiSを卒業。Youtuberに
#カミヤサキとアヤエイトプリンスのレンタルトレード終了

Youtuber = BiS[0]
BiS.remove('カミヤサキ')
BiS.remove('プー・ルイ')
Ganpare.remove('アヤ・エイトプリンス')
Ganpare.insert(1,'カミヤサキ')
BiS.insert(1,'アヤ・エイトプリンス')
Dattai.append('プー・ルイ')

.remove()では(x)を指定し、xを持つ最初の要素を削除。

.insert()でインデックスを指定し要素を直前に追加。
()には(インデックス,要素)を指定。
なので最初に追加するなら(0,hogehoge)ということになる。

ちなみにですが、

プー・ルイが、ユーチューバーになって旧BiSがBYSとして再結成するっていう、ね。


さぁ、こっからBiSがごちゃごちゃする。

3月、合宿オーディション。
Gangparadeに2名加入。
BiSに4名の新人と妹グループEMPiREからYUiNA EMPiREが編入。

natalie.mu

さらにBiSが、BiS1stとBiS2ndの二部制になることが発表される。
一軍、二軍制にして内部抗争を生む構造。

BiS1stは、パン・ルナリーフィ、ももらんど、ゴ・ジーラ、セントチヒロ・テッテ(仮)、オレンジコバンパイア(仮)、ガミヤサキ(仮)
BiS2ndは、ペリ・ウブ、アヤ・エイトプリンス、キカ・フロント・フロンタール、YUiNA EMPiRE、アユナ・C(仮)、チョウショージメグミ(仮)

しかし、ももらんどが突如失踪→グループ脱退を発表。
で、ガミヤサキ(仮)がBiSへの参加を辞退……元グループに戻ったとか。

ガミヤサキ=猫屋奏多ねぇ……。
なんでオーディション受けたんだろう。
どちらにしろBiS1stは、薄くなった。

>>>Python split()
# 3月、オーディションが行われGangparadeに2名、BiSに4名の新人と妹グループEMPiREからYUiNA EMPiREが編入
# BiSが二部制になることが発表される
Ganpare.extend(['月ノウサギ', 'ハルナ・バッ・チーン'])

BiS.clear()
BiS1st='パン・ルナリーフィ、ももらんど、ゴ・ジーラ、セントチヒロ・テッテ(仮)、オレンジコバンパイア(仮)、ガミヤサキ(仮)'
BiS2nd='ペリ・ウブ、アヤ・エイトプリンス、キカ・フロント・フロンタール、YUiNA EMPiRE、アユナ・C(仮)、チョウショージメグミ(仮) '
Bis1st=BiS1st.split('、')
Bis2nd=BiS2nd.split('、')
BiS1st.remove('ももらんど')
Bis1st.pop()
Dattai.append('ももらんど')

.clear()メソッドは配列を全削除し空に。

.split()は、指定文字で区切ったリストが返る。
文字を省略するとスペースで区切ったリストが返る。
今回の場合、読点「、」を区切りとしてリスト化してみた。

>>>Python print()

ということでリストオブジェクトの基本的なメソッドを使った配列のいじり方でした。
チュートリアルに書いてあるので詳細はリンク先を参照どうぞ。

Python チュートリアル>>5.1. リスト型についてもう少し

結構脱退してるイメージだったけれど、2グループで5人というのは多いのか?
仮に普通の会社で2部署の4年で5人退職なら、そこまで多くない。
※内定の時点で不参加の2人(ヒラノノゾム(仮)、ガミヤサキ(仮))は除く

GangParadeは、ほぼ完成形。
月ノウサギ、ハルナ・バッ・チーンの加入が大成功。
もうあとは売れるだけ。
今が一番面白いかもしれない。

BiSはどうなるんだか、まだ見えない……。

>>>Python
print(Ganpare)
['ヤママチミキ', 'カミヤサキ', 'ユメノユア', 'キャンマイカ', 'ココ・パーティン・ココ', 'テラシマユウカ', 'ユイ・ガ・ドクソン', '月ノウサギ', 'ハルナ・バッ・チーン']
print(BiS1st)
['パン・ルナリーフィ', 'ももらんど', 'ゴ・ジーラ', 'セントチヒロ・テッテ(仮)', 'オレンジコバンパイア(仮)']
print(BiS2nd)
['ペリ・ウブ', 'アヤ・エイトプリンス', 'キカ・フロント・フロンタール', 'YUiNA EMPiRE', 'アユナ・C(仮)', 'チョウショージメグミ(仮) ']
print(Dattai)
[ 'ミズタマリ', 'シグサワアオ', 'イヌカイマアヤ', 'プー・ルイ', 'ももらんど']

ではGW、Pythonを楽しんでください。
もうちょっと「独学プログラマー」読んで勉強しますね(うーむ)。

こちらからは以上です。

独学プログラマー Python言語の基本から仕事のやり方まで
日経BP社 (2018-03-20)
売り上げランキング: 446

GANG 2 [CD+DVD](初回限定盤)
GANG PARADE
T-Palette Records (2018-05-29)
売り上げランキング: 14,781