Pythonリスト内の文字列を条件でフィルタリング、別文字に置換するコード[Python1年]
自作フィルターです。文字列が入ったPythonのlistの個々の要素について、条件を設定してでチェックして、結果に応じて別の文字列をいれる仕事をする内容です。
リストの元がCSVやエクセルファイルのとき、スクレイピングでとっている値をリストに格納している場合にも使っていけると思います。
フィルターしているのは2つのことです。
「死」が含まれていれば「\違うこと考えて!/」に変更。
中身が全部アルファベットでスペースが入っていない内容の場合「(英単語として長すぎた)」に変更。
TheList = ['生きる','遊ぶ','立ち上がる','たたかう','killjanakuteikll','死にたい']
TheList2 = []
#TheListをのそれぞれの中身をTheWordとしてチェック。
#チェック後TheList2に入れる。
for TheWord in TheList:
if '死' in TheWord:
TheList2.append('\違うこと考えて!/')
elif TheWord.isascii() is True:
if len(TheWord) == len(TheWord.replace(' ','')) :
TheList2.append('(英単語として長すぎた)')
else:
TheList2.append(TheWord)
else:
TheList2.append(TheWord)
#一度中身を空に
TheList= []
#TheList2に蓄積された内容を入れる
TheList= TheList2
print(TheList)
#想定 実行結果
#['生きる', '遊ぶ', 'たたかう', '立ち上がる',
# '(英単語として長すぎた)', '\違うこと考えて!/']