类方法可以用input ()函数传入接口吗?

类方法可以用input ()函数传入接口吗?(语言-python)如图所示

img

可以,代码如下:

class Animal:
    def run(self):
        raise AttributeError()
class Cat(Animal):
    def run(self):
        print('猫在跑')
class Pig(Animal):
    def run(self):
        print("猪在跑")
class Dog(Animal):
    def run(self):
        print("狗在跑")
n = input('请输入参数:\n') # 输入类型为字符串
n = eval(n)  #将字符串转换成变量
def func(n):
    n.run()
a=Cat()                    
b=Pig()
c=Dog()
func(n)

年轻人的想法总是很奇妙的,好像情理之中,却又经不起细致的推敲。

当然可以,只不过🐼

str1 = input('
    a = cat
    fun(a)')
eval(str1)

等下,接口?
你理解错了,你的abc这三个是三个类的实例化对象,不叫接口。

你的意思是你在代码里面不执行这样的命令了 :a=Cat()
改成input输入是吧?
_a = input() #这里输入Cat()
a = eval(_a)
a.run()
这样一样可以

img


eval() 函数用来执行一个字符串表达式,并返回表达式的值。
https://www.runoob.com/python/python-func-eval.html