1. ホーム
  2. Python

Pythonは空行のあるtxtファイルを読み込み+内容を分割してリストに保存する

2022-02-21 17:40:15
<パス

  txtファイルはこのような感じです。

  次のような手順で、すべての単語を読み出し、リストに格納したいと思います。

  1. まず空行を削除する
data = open(r'E:\Program Files\PyCharm 2019.2\machinelearning\homework\Emails\Training\spam\3.txt')
    cab = []
    for line in data.readlines():
        cab.append(line.strip().split(','))
    print(cab)


キャブを出力します。

[['You Have Everything To Gain! '], ['], ['Incredib1e gains in length of 3-4 inches to yourPenis', ' PERMANANTLY'], ['], ['Amazing increase in thickness of yourPenis', 'up to 30%'], ['BetterEjacu1ation control'], ['], ['Experience Rock-HardErecetions' ].[爆発的な', '強烈なオーガズム'], ['Increasing volume ofEjacu1ate'], ['Doctor designed and endorsed'], [ '100% herbal', '100% Natural', '100% Safe'], ['The proven NaturalPenisEnhancement that works! '], ['100%返金保証']] 。

cab[1]が異常値であることがわかります。

  1. cab[1]のような外れ値を取り除く
cab_f=[]
for i in range(len(cab)):
    for j in range(len(cab[i])):
        if cab[i][j] ! = '':
            cab_f.append(cab[i][j].strip())


cab_fを出力します。

あなたは得るためにすべてを持っている!['You Have Everything To Gain! '、'3-4インチの長さの信じられないほどの利益あなたの陰茎に'、'永久に'、'あなたの陰茎の厚さの驚くべき増加'、'30%まで'、'より良いEjacu1ationコントロール'、'経験ロックハード回復'。爆発的な」、「強烈なオーガズム」、「射精のボリュームを増やす」、「医師の設計と承認」、「100%ハーブ」、「100%自然」、「100%安全」、「動作する実証済みのNaturalPenisEnhancement!」、「100%安全」、「100%安全」、「爆発的な」、「強力な」、「強力な」、「強力な」、「強力な」、「強力な」、「強力な」、「強力な」。 '、'100%返金保証'] 。

リストの次元を一次元にし、外れ値を取り除いたことがわかります。

  1. 単語の分割
cab_final = []
    for i in cab_f:
        for j in i.split(' '):
            cab_final.append(j)


cab_finalを出力します。

['You', 'Have', 'Everything', 'To', 'Gain! ', 'Incredib1e', 'gains', 'in', 'length', 'of', '3-4', 'inches', 'to', 'yourPenis', 'PERMANTLY', 'Amazing', 'increase', 'in', 'thickness', 'of', 'yourPenis', 'up', 'to', '30% ', 'BetterEjacu1ation', 'control', 'Experience', Rock-HardErecetions', 'Explosive', 'intenseOrgasns', 'Increase', 'volume', 'ofEjacu1ate', 'Doctor', 'designed', 'and', 'endorsed', '100%', 'herbal', '100%', 'Natural', '100%', 'Safe', 'The', 'proven', ' NaturalPenisEnhancement', 'that', 'works! '、'MoneyBack'、'Guaranteeed'] 。

ご覧のように、私たちが望んでいた結果を得ることができました!!!

フルコードです。

def read_txt():
    data = open(r'E:\Program Files\PyCharm 2019.2\machinelearning\homework\Emails\Training\spam\3.txt')
    cab = []
    for line in data.readlines():
        cab.append(line.strip().split(','))
    cab_f = []
    for i in range(len(cab)):
        for j in range(len(cab[i])):
            if cab[i][j] ! = '':
                cab_f.append(cab[i][j].strip())
    cab_final = []
    for i in cab_f:
        for j in i.split(' '):
            cab_final.append(j)
    return cab_final


if __name__=='__main__':
    print(read_txt())