Shanraq.org Shanraq.org
IT

Үлкен тілдік үлгісіз ЖИ: қазақша мәтін үлгісі 14-сабақ (барлығы 20)

14-сабақ. Адам нені сұрап тұрғанын танимыз

Шахмат қашан? және Шахмат қайда? сұрақтары бір үйірмеге қатысты, бірақ әртүрлі мәлімет сұрайды. Сұрақ түрі, яғни адамның іздеген мәліметі, мұнда уақыт немесе орын болады. Бұл мәліметтің өзі емес. Тапсырыс қағазындағы «не керек?» деген жол дайын заттың орнына жүрмейтіні сияқты.

Мәтін ИИ көмегімен аударылды.

Бұл не үшін керек?

Шахмат қашан? және Шахмат қайда? сұрақтары бір үйірмеге қатысты, бірақ әртүрлі мәлімет сұрайды. Сұрақ түрі, яғни адамның іздеген мәліметі, мұнда уақыт немесе орын болады. Бұл мәліметтің өзі емес. Тапсырыс қағазындағы «не керек?» деген жол дайын заттың орнына жүрмейтіні сияқты.

Әуелі толық бағдарлама

UTF-8 жазылымымен intent.py файлын жасаңыз. қашан мен қайда сөздерін оқу мысалындағы дәл белгілер ретінде аламыз. Екеуі де кездессе, бірін үнсіз таңдамай, екеуін де сақтаймыз. text сұрақты кіші әріппен, clean оны ? пен үтірсіз сақтайды; words — сөздер тізімі.

text = input("Сұрақ: ").lower()
clean = text.replace("?", "").replace(",", "")
words = clean.split()
intents = []
if "қашан" in words:
    intents.append("уақыт")
if "қайда" in words:
    intents.append("орын")
print(intents)

Дайын файлда осы бағдарлама бар.

words — 7-сабақтағы тәсілмен бөлінген сөздер тізімі. intents = [] — табылған сұрақ түрлерінің бос тізімі. Екі бөлек if екі сөзді де тексереді: алғашқы шарт сәйкес келсе де, екіншісі орындалады. 13-сабақтағы append табылған түрді қосады. уақыт пен орын — кейін деректі іздеуге қажет белгілер; олар табылған уақыт не орын емес. Шахмат қашан? үшін ['уақыт'], Шахмат қайда? үшін ['орын'], Шахмат қашан қайда? үшін ['уақыт', 'орын'] шығады. 13-сабақтағыдай replace әрекеті ? мен үтірді алып тастайды, сондықтан үтірлі Шахмат қашан, қайда? сұрағы да екі түр береді. Өзге тыныс белгілері әзірше сақталады.

Шахмат неге? үшін [] шығады: неге сөзі біздің екі түрімізге кірмейді. Бос тізім сұрақтың мәні жоқ дегенді білдірмейді. Сөздердің реті мен қосымшалары әзірше талданбайды; split() бөлген тұтас сөз ғана салыстырылады.

Тірек сызба

Сұрақ → сөздер тізімі → қашан бар ма? «уақытты» қосу → қайда бар ма? «орынды» қосу → табылған түрлердің бәрін сақтау.

Еске түсіріп, орындаңыз

Кодты жабыңыз. Неге мұнда if/elif емес, екі if барын түсіндіріңіз. Сурет қашан?, Сурет қайда?, Сурет қашан қайда? және Сурет неге? сұрақтарын сынаңыз.

Тапсырма: ҚАЙДА? және бос жол үшін нәтижені болжаңыз. Көмек: lower() бас әріпті кішірейтеді; тізім бос қалуы мүмкін. Үлгі жауап: ['орын'] және []. Жиі қате: ['уақыт'] көріп, бағдарлама сабақ кестесін біледі деп ойлау. Ол әзірше керекті деректің түрін ғана біледі; деректерді 16–20-сабақтарда қосамыз.

Мәтінде қате не теру қатесі кездессе, бізге айтыңыз

Пікірлер (0)

Әзірге пікір жоқ. Бірінші болыңыз.