【Python】학교의 과제는 Python에 던져보자【효율화】

소개



현재 자신은 고등학교 1년이며,
코로나 옥에서 여가가 된 자신은 파이썬을 공부하고,
밤새도록 Java와 Elixir 공부를 시작하기 때문에 학교 숙제가 ...
역시 효율화의 Python이라고 하는 것으로, 학교의 숙제도 나가자고 생각했습니다.
코드의 효율성, 속도의 면에서 위화감을 가질지도 모릅니다만, 따뜻한 눈으로 봐 주시면 고맙습니다.

작문



테마 : 당신에게 미술이란 무엇입니까?
이것은 파이썬에 써야 한다고 생각했다.
자연 언어 처리도 다소 공부하고 있었기 때문에, Mecab를 사용해 나눠 쓰고,
여러 모델 문장에서 마르코프 체인으로 새로운 문장을 생산했습니다.
Python에는 편리하게 markovify라는 모듈이 있습니다.
나누어진 문장을 처리하는데 사용하였다.

import MeCab
import markovify 
text = ''
parse_text = MeCab.Tagger('-Owakati').parse(text)

text2 = ''
parse_text2 = MeCab.Tagger('-Owakati').parse(text2)

text_model = markovify.Text(parse_text)
text_model2 = markovify.Text(parse_text2)

comb_model = markovify.combine([text_model,text_model2],[1,1])

for _ in range(8):
    print(comb_model.make_sentence())


이제 생산한 문장이
美術は自分の感性で作り上げることに意義があるのであり、学校で教える美術ではない。

라고 싸움을 파는 내용이 되어 버려, 성적은 안의 정 3/10이었다.


한마디로 표현하기 어려운 영어 과제



과제 내용



특정 앱을 사용하여 읽은 일본어를 영어로 번역하고 읽습니다.
또는 영어를 그대로 읽는 것이 있다.

프로그램의 논리를 생각



우선 음성 인식을 하는 프로그램을 구축하고,
영어로 읽을 때, 일본어로 읽을 때의 처리를 써야 한다.
import pyaudio
import wave
import speech_recognition
from playsound import playsound
from googletrans import Translator
from gtts import gTTS
translator = Translator()

def rcd():
    audio = pyaudio.PyAudio()
    stream = audio.open(format=pyaudio.paInt16,channels=1,rate=44100,input=True,input_device_index=0,frames_per_buffer=2**11)

    frames = []
    for i in range(0, int(44100 / 2**11 * 10)):
        data = stream.read(2**11)
        frames.append(data)

    stream.stop_stream()
    stream.close()
    audio.terminate()

    sFile = wave.open(sound.wav, 'wb')
    sFile.setnchannels(1)
    sFile.setsampwidth(audio.get_sample_size(pyaudio.paInt16))
    sFile.setframerate(44100)
    sFile.writeframes(b''.join(frames))
    sFile.close()

def to_text():
    r = speech_recognition.Recognizer()
    with speech_recognition.AudioFile(sound.wav) as src:
        audio = r.record(src)
    text = r.recognize_google(audio,key='Mykey',language='en-US')
    return text

def read_english():
    play_sound(sound.wav)

def to_jp():
    text_data = to_text()
    trans_ja = translator.translate(text_data,src='en',dest='ja')
    return trans_ja

def read_ja():
    text_data = to_jp()
    tts = gTTS(text=text_data, lang='ja')
    tts.save('jp.mp3')
    play_sound('jp.mp3')

def main_jp():
    rcd()
    read_ja()

def main_en():
    rcd()
    read_english()

if __name__ =='__main__':
    mode = input('mode:')
    if mode == 'ja':
        main_jp()
    elif mode =='en':
        main_en()
    else:
        pass


이것으로 과제를 제출한 곳

1/15 밖에 패스 할 수 없었다 (T. T)
당연히 성적도 즈타보로였습니다.

마지막으로



학교 숙제의 자동화에는 역시 모듈의 많음이 뛰어난 Python이 적합하다고 생각한다.
물론 이것은 담임으로부터 여러가지 이야기를 들었지만,
이를 계기로 테스트 성적도 그다지 좋지 않은 자신에게 AO 입시를 추천해줬다.
장래에 종이가 사용되지 않게 되어, 보다 전자기기의 수요가 높아지면, 거기에 비례해 프로그램의 수요도 높아지기 때문에,
파이썬은 이른 시간에 해를 끼치지 않을 것이라고 느꼈다. b

좋은 웹페이지 즐겨찾기