cdlab-sit / 100knock

「言語処理100本ノック 2015」を解いていく
http://www.cl.ecei.tohoku.ac.jp/nlp100/
0 stars 0 forks source link

配列全てに処理する色々な方法 #27

Open higurashi-takuto opened 5 years ago

higurashi-takuto commented 5 years ago

Code Author: @kumbikumbiSIC Knock Number: 04 まだ書きかけだとは思うけど、次の表記について似ている表現が色々思いついたので、参考にしてみてください。 https://github.com/cdlab-sit/100knock/blob/3c161102e76300fb83e73eae83393cd9fccc491b/kumbikumbiSIC/04.py#L4-L5

# 方法1: 配列はイテレータブルなのでforで要素を直接取り出せます。
word = []
for w in msg2:
    word.append(w.replace(",", "").replace(".", ""))

# 方法2: インデックスをつけたい場合はenumerate()が使えます。
for i, w in enumerate(msg2):
    msg2[i] = w.replace(",", "").replace(".", "")

# 方法3: また、配列の全要素に同じ処理をするにはmap()が使えます。(戻り値がmapなのでlistにする必要があります)
msg2 = list(map(lambda word: word.replace(",", "").replace(".", ""), msg2))
Hikaru-Morita commented 5 years ago

まずイテレータブルを理解してなかったですね

higurashi-takuto commented 5 years ago

ごめん、イテラブル(iterable)だった。

Hikaru-Morita commented 5 years ago

イテラブルでも分かってなかったですね!