Форум программистов, компьютерный форум, киберфорум
Python: Решение задач
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
0 / 0 / 0
Регистрация: 13.04.2021
Сообщений: 3

Реализовать функции модуля питон!

17.02.2022, 10:09. Показов 592. Ответов 4

Студворк — интернет-сервис помощи студентам
Реализовать функции модуля указаных в скобках.
В ВинРарер файл модуля с названием Tokinezer

#!/usr/bin/env python
# -*- coding: utf-8 -*-
"""
Модуль призначено для синтаксичного розбору виразу по частинах.

Вираз може мати вигляд:
(abc + 123.5)*d2-3/(x+y)
Вираз може містити:
змінні - ідентифікатори
константи - дійсні або цілі числа без знаку
знаки операцій: +, -, *, /
дужки: (, )

Функція get_tokens за заданим виразом має повертати
послідовність лексем - токенів
Кожний токен - це кортеж: (<тип токену>, <значення токену>)
"""
from collections import namedtuple

# типи токенів
TOKEN_TYPE = ("variable",
"constant",
"operation",
"left_paren",
"right_paren",
"other")

# словник фіксованих токенів, що складаються з одного символа
TOKEN_TYPES = {"+": "operation",
"-": "operation",
"*": "operation",
"/": "operation",
"(": "left_paren",
")": "right_paren"}

# тип токена
Token = namedtuple('Token', ['type', 'value'])


def get_tokens(string):
"""
Функція за рядком повертає список токенів типу Token
aram string: рядок
:return: список токенів
"""

def _get_next_token(string):
"""
Функція повертає наступний токен та залишок рядка
Використовує внутрішні функції _get_constant, _get_variable
aram string: рядок
:return: next_tok - наступний токен, якщо є, або None
:return: string - залишок рядка
"""


def _get_constant(string):
"""
Функція за рядком повертає константу (якщо є) та залишок рядка
aram string: рядок
:return: константа (або порожній рядок), залишок рядка
"""


def _get_variable(string):
"""
Функція за рядком повертає змінну (якщо є) та залишок рядка
aram string: рядок
:return: змінна (або порожній рядок), залишок рядка
"""
if not string or not string[0].isalpha() and string[0] != '_':
return "", string

for i, c in enumerate(string):
if not c.isalnum() and c != '_':
break
else:
i += 1

return string[:i], string[i:]


if __name__ == "__main__":
success = get_tokens("(((ab1_ - 345.56)(*/.2{_cde23") == (
[Token(type='left_paren', value='('),
Token(type='left_paren', value='('),
Token(type='left_paren', value='('),
Token(type='variable', value='ab1_'),
Token(type='operation', value='-'),
Token(type='constant', value='345.56'),
Token(type='right_paren', value=')'),
Token(type='left_paren', value='('),
Token(type='operation', value='*'),
Token(type='operation', value='/'),
Token(type='other', value='.'),
Token(type='constant', value='2'),
Token(type='other', value='{'),
Token(type='variable', value='_cde23')])
print("Success =", success)
Вложения
Тип файла: zip skeleton.zip (4.8 Кб, 3 просмотров)
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
17.02.2022, 10:09
Ответы с готовыми решениями:

Функции в питон
Даны целые числа a1,…,an, b1,…,bn, k. Если в последовательности a1,…,an нет ни одного члена со значением k, то первый по порядку член этой...

Задача: Взять заданную строку в кавычки вида «» . можно ли сразу решение и листинг пж . питон. код питон питон
Взять заданную строку в кавычки вида «» .

Как переписать следующий код нахождения модуля с питон на Octave?
def abs(x): if x &gt;= 0: return x else: return -x

4
533 / 438 / 47
Регистрация: 17.07.2013
Сообщений: 2,236
17.02.2022, 10:22
Это новый язык программирования?
0
0 / 0 / 0
Регистрация: 13.04.2021
Сообщений: 3
17.02.2022, 10:24  [ТС]
Да. Открывайте через файл там понятно) А то тут Хогвардс
0
533 / 438 / 47
Регистрация: 17.07.2013
Сообщений: 2,236
17.02.2022, 10:30
Цитата Сообщение от XanD0R Посмотреть сообщение
Да. Открывайте
О, а сейчас понятно!
0
0 / 0 / 0
Регистрация: 13.04.2021
Сообщений: 3
17.02.2022, 10:34  [ТС]
Буду просто черезвычайно признателен в случае помощи!)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
17.02.2022, 10:34
Помогаю со студенческими работами здесь

В начало каждого модуля должен быть помещен комментарий, описывающий функции данного модуля
Очень нужна ваша помощь. Пожалуйста, кто знает, помогите с этой задачей. Задача на тему: Использование процедур и функций Примечание: В...

Функции модуля работают, но самого модуля в книге не видно
Помогите, пожалуйста. Написал в модуле функцию. Использовал ее на листе и сохранил файл. Когда открыл файл, модуль VBA пропал...

Вызов функции из модуля по имени модуля
Есть 2 модуля Модуль1 и Модуль2 В каждом из них есть паблик функция qwe() Вопрос: как из Модуль3 вызвать функцию qwe из модуля по его...

Реализовать в виде модуля
Реализовать в виде модуля набор подпрограмм для выполнения следующих операций над обыкновенными дробями вида p/q (p-целое, q —...

Реализовать в виде модуля
Реализовать в виде модуля набор подпрограмм для выпол¬нения следующих операций над длинными числами: а) сложения; б) вычитания; в)...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru