表示对字符串的方法调用的下拉框

2024-09-23 06:23:55 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个下拉框,用户可以在其中选择一个方法来检查某个字符串是否等于或结束于另一个字符串。你知道吗

我会考虑使用函数指针/对象作为下拉框模型,并调用当前选择的函数,但是由于方法是/将是

  1. 字符串方法和
  2. 平等并不存在

在Python中如何最好地处理这个问题,同时考虑到我必须调用列名上的方法,比如column.name.[selectedMethod](variableStringFromTextBox)?你知道吗

(这是一个在GUI上显示“使用XYZ where column name[equals or endswith]”+带有变量字符串的文本框的选项。)

谢谢


Tags: 对象方法函数字符串用户name模型gui
1条回答
网友
1楼 · 发布于 2024-09-23 06:23:55

如果我理解正确,下拉列表包含字符串。一个简单的方法是定义适当的方法,然后使用globals()。例如:

# check if string A ends with string B
def endswith(A, B):
   return A.endswith(B)

# check if string A equals to string B
def stringsequal(A, B):
   return A == B

假设字符串是A和B,并且保存函数名的字符串是S

globals()[S](A, B)

将调用A和B上的函数

globals()是一个字典,包含您定义的所有全局函数,从方法名映射到方法对象。你知道吗

您还可以维护一个自己的字典,将方法名映射到方法对象。你知道吗

相关问题 更多 >