Python 如何将文件/模块中的函数快速转换为类?

Python 如何将文件/模块中的函数快速转换为类?,python,sublimetext,sublime-text-plugin,Python,Sublimetext,Sublime Text Plugin,假设一个文件中有100个函数要转换为类: def func_1(param): pass def func_2(param): pass ... def func_100(param): pass 我想简单地将其转换为: class MyClass(): def func_1(self, param): pass def func_2(self, param): pass ... def fu

假设一个文件中有100个函数要转换为类:

def func_1(param):
    pass

def func_2(param):
    pass

...

def func_100(param):
    pass
我想简单地将其转换为:

class MyClass():

    def func_1(self, param):
        pass

    def func_2(self, param):
        pass

    ...

    def func_100(self, param):
        pass

有没有快速的方法可以做到这一点?也许是一个sublime插件?

您可以在sublime中使用正则表达式和多重编辑来简化任务

  • 按Ctrl+f(打开查找底部栏)

  • 确保已激活正则表达式按钮(
    *
    )。如果没有,请按Alt+r
  • 键入
    def.*\(
    作为搜索模式)

  • 按Alt+Enter可对所有功能进行多重编辑:

  • 按左箭头取消选择,然后键入
    self,

  • 按Shift+PageDown多次可选择所有涉及功能的文本

  • 按Tab键向右移动所有功能

  • 在顶部添加类名
    class MyClass():

  • 您仍然需要手动修复类中的内部调用,例如,如果当前某个函数调用另一个函数:

    def func_1():
        pass
    
    def func_2():
        func_1()
    
    应手动固定到:

    def func_1(self):
        pass
    
    def func_2(self):
        self.func_1()
    

    对我的问题为何被否决有何评论?