Pycharm脚本的“提取方法”功能的替代方案?

时间:2019-07-11 03:42:12

标签: python pycharm

我想通过从一部分代码中提取一个函数来重构基于脚本的Python代码。

示例:

a = 5
b = [1,2,3]

a = 6                      #  < this should be extracted
b = b.append(4)            #  < this should be extracted

print("a:", a)
print("b:", b)

使用the extract method functionality of Pycharm会导致以下结果:

a = 5
b = [1,2,3]

def method_name():
    global a, b
    a = 6
    b = b.append(4)

method_name()
print("a:", a)
print("b:", b)

Refactoring in PyCharm: How to extract a method?中,已经声明此方法提取不是针对Python脚本而优化的,而是针对OOP /类上下文而优化的。

我想避免使用global,因为它不是线程安全的并且不安全(请参阅:How do I write a function with output parameters (call by reference))。

当我想将所有参数返回给调用方时,是否有任何解决方法/自动重构的替代方法,如How do I write a function with output parameters (call by reference)

中所建议的那样

因此结果看起来像这样:

def method_name(a, b):
    a = 6
    b = b.append(4)
    return a, b

a, b, = method_name(a, b)

0 个答案:

没有答案