所以我正在尝试制作一个类似于集合论计算器的 Python 应用程序(即两个集合的并集、交集、补码等)。我想要一个文本字段,在执行时,它像 Python 表达式一样被评估,带有大括号并且全部变成集合。计算新集合时,结果将打印在屏幕上。但是,我想确保用户不会输入任何可能会搞砸整个应用程序(或更糟;系统)的 Python 命令,无论是否有意。他应该只能输入以下内容;
- 设置操作(联合、差异、基数等;我将为数学符号提供按钮并使用正则表达式使其在引擎盖下正确)
- 集合(反过来,它只能包含以下元素;其他集合、元组、整数、实数、字母字符和字符串)。
为了给你一个想法,输入和输出应该是这样的(这个应用程序将带有一个 GUI,为了方便我只是使用终端样式):
>>> {1, 2, a} - {a}
{1, 2}
有小费吗?还是我应该只实现一种迷你语言,然后将其转换为 Python 命令?