python 3.11中的enum包有StrEnum类。我认为它很方便,但不能在 python 3.10 中使用它。无论如何,使用此类的最简单方法是什么?
我想覆盖某个类的绘图方法。我希望将表达式字符串用作轴标签。然而,方法调度似乎以某种方式评估表达式,因此我无法按照我预期的方式检索原始表达式(抱歉,如果我在这里使用了错误的词汇)。下面是一个最小的例子:
library(rlang)
make_s = function(x) structure(x, class = "s")
plot2= function(x) print(enexpr(x))
plot.s = function(x) print(enexpr(x))
variable_name = make_s(1)
plot2(variable_name)
#Output:
#variable_name
plot(variable_name)
#Output:
#[1] 1
#attr(,"class")
#[1] "s"
Run Code Online (Sandbox Code Playgroud)
我的期望是plot.s返回“variable_name”,但它没有返回。为什么会这样以及如何补救?