文字を数字に変換する
1位、圏外、34位というリストがあるとします。
これを数字だけにしたい場合、以下のようにすると数字に変換されます。
import re
# リスト内の文字
example =["1位","圏外","34位"]
# 文字を数字だけに変換する
for i in example:
# 圏外の場合は100位とする
if i =="圏外":
i = '100位'
#「位」という文字を空欄にする
num = re.sub("\\D", "",i)
print(num)
re.sub は以下のようになっています。
re.sub("正規表現パターン", "置換後文字列", "置換したい文字列")
変換した文字を新しいリストに入れたい時
変換まで終わったら、新しいリストを準備して、数字だけをリストに入れます。
import re
# リスト内の文字
example =["1位","圏外","34位"]
# 空のリストを準備
new_example=[]
# 文字を数字だけに変換する
for i in example:
# 圏外の場合は100位とする
if i =="圏外":
i = '100位'
#「位」という文字を空欄にする
num = re.sub("\\D", "",i)
# 新しいリストへ変換した数字を追加する
new_example.append(num)
print(new_example)