[Sparta]15日制作チャレンジ2


冒頭の一言
今日は挑戦戦作りが始まって14日目.
毎日チームメンバーと集まって会議をしたり、コードを書いたりして、無数の修正を経ています.
ますます成果が出てきた.満足する🏻
最初のプロジェクトで素晴らしいチームメンバーと一緒に行ってくれてありがとう
だから今日は必ずWordCloudを完成させて…!アザ
開発作業内容
✔モンゴル設備データを使用してWordクラウドを作成する
仕事中のホットスポット/悩み...ソリューション
質問です.
📌 dbに格納されているデータリストからplacetitlecommentの項目を検索したいだけですが、バイナリ形式で格納されているデータから検索することはできません()
texts = list(db.travelLog.find({},{'_id':False}))
for text in texts:
    print(text)

# 결과
{'writer': '르탄이', 'numbers': '8523', 'place': '제주', 'title': '가고 싶다', 'date': '2021-10-03', 'weather': '', 'comment': '갔다 왔지만, 또 가고 싶다.'}
{'writer': '되는지 테스트', 'numbers': 'undefined', 'place': '부산스', 'title': '호호', 'date': '2021-10-04', 'weather': '', 'comment': '너만 믿는다!'}
{'writer': '일이삼사', 'numbers': 'undefined', 'place': '부산', 'title': '맛집 투어', 'date': '2021-10-04', 'weather': '', 'comment': '부산에는 맛집이 진짜 많다. 맨날 가서 먹다만 와도 시간이 모자라'}
まず、不要なデータをfalse値に入れます.
texts = list(db.travelLog.find({},{'_id':False,'writer':False,'numbers':False,'date':False,'weather':False}))
for text in texts:
    print(text)

# 결과
{'place': '제주', 'title': '가고 싶다', 'comment': '갔다 왔지만, 또 가고 싶다.'}
{'place': '부산스', 'title': '호호', 'comment': '너만 믿는다!'}
{'place': '부산', 'title': '맛집 투어', 'comment': '부산에는 맛집이 진짜 많다. 맨날 가서 먹다만 와도 시간이 모자라'}
欲しい結果が出たが、有効な方法ではないようだ.
Deviがより多くのリストを持っている場合は、false値を1つ1つ指定するのはあまりにもひどいかもしれません...
この部分は後でもっと良い方法を探すかもしれません.
質問です.
📌 データはよく受信できるが、textkey:valueとして出力され、WordCloudを作成するにはvalueの部分しか抽出できないが、効果は望ましくない.
texts = list(db.travelLog.find({},{'_id':False,'writer':False,'numbers':False,'date':False,'weather':False}))
for text in texts:
    print(text)

# 결과
{'place': '제주', 'title': '가고 싶다', 'comment': '갔다 왔지만, 또 가고 싶다.'}
{'place': '부산스', 'title': '호호', 'comment': '너만 믿는다!'}
{'place': '부산', 'title': '맛집 투어', 'comment': '부산에는 맛집이 진짜 많다. 맨날 가서 먹다만 와도 시간이 모자라'}
繰り返し文がリストと一緒に使われることを考慮して、[' ']を加えてリストのみをロードする方法を考えました.
texts = list(db.travelLog.find({},{'_id':False,'writer':False,'numbers':False,'date':False,'weather':False}))
for text in texts:
    print(text['place'], text['title'], text['comment'])

# 결과
제주 가고 싶다 갔다 왔지만, 또 가고 싶다.
부산스 호호 너만 믿는다!
부산 맛집 투어 부산에는 맛집이 진짜 많다. 맨날 가서 먹다만 와도 시간이 모자라
結果は成功した!!嬉しい…!!
しかし、そのテキストを変数に含めたい...それはどうする…?
試してみる.戻りdef関数
texts = list(db.travelLog.find({},{'_id':False,'writer':False,'numbers':False,'date':False,'weather':False}))
for text in texts:
    def cloud():
        return text['place'], text['title'], text['comment']
    print(cloud())

# 결과
('제주', '가고 싶다', '갔다 왔지만, 또 가고 싶다.')
('부산스', '호호', '너만 믿는다!')
('부산', '맛집 투어', '부산에는 맛집이 진짜 많다. 맨날 가서 먹다만 와도 시간이 모자라')
コードをより美しくするために、placetitle、およびcomment変数をそれぞれ宣言した.
!,.同様の特殊文字を除去するために、.replaceを使用してデータクリーンアップを行います.
texts = list(db.travelLog.find({}, {'_id': False, 'writer': False, 'numbers': False, 'date': False, 'weather': False}))
for text in texts:
    place = text['place']
    title = text['title'].replace('!','').replace('~','').replace('.','')
    comment = text['comment'].replace('!','').replace('~','').replace('.','').replace(',','').replace('\n','')

    def cloud():
        return place, title, comment
    print(cloud())

# 결과
('제주', '가고 싶다', '갔다 왔지만, 또 가고 싶다.')
('부산스', '호호', '너만 믿는다!')
('부산', '맛집 투어', '부산에는 맛집이 진짜 많다. 맨날 가서 먹다만 와도 시간이 모자라')
ただし、関数で値returnを指定すると、''にテキストが含まれている形式に抽出されます.
どうすれば文字をきれいに書けるか考えているうちに、私たちチームメンバーの考えでreturnを作ったとき、+で修正しました!
texts = list(db.travelLog.find({}, {'_id': False, 'writer': False, 'numbers': False, 'date': False, 'weather': False}))
for text in texts:
    place = text['place']
    title = text['title'].replace('!','').replace('~','').replace('.','')
    comment = text['comment'].replace('!','').replace('~','').replace('.','').replace(',','').replace('\n','')

    def cloud():
        return place + title + comment
    print(cloud())

# 결과
제주가고 싶다갔다 왔지만 또 가고 싶다
부산스호호너만 믿는다
부산맛집 투어부산에는 맛집이 진짜 많다 맨날 가서 먹다만 와도 시간이 모자라
結果は成功だ🤩
やっと簡潔なテキストしか出力されませんでした.大したことではないのか分からないが、いろいろと悩んだ末に出てきた結果なので嬉しい.あなたがそれを利用するとは思わなかったが、もう一度、Pythonは本当に直感的だった......思い出した.
to do list
✔完了したwordクラウドpngファイルサーバに浮いている
1000字のクラウドフォントの色を変更する方法を参照します
1000ワードクラウドを参照