Python初学者-在一个程序中使用多个函数有什么问题吗?

Python初学者-在一个程序中使用多个函数有什么问题吗?,python,Python,我是python的新手,如果这是一个奇怪的问题,我很抱歉。 对于课堂作业,我们必须制作一个程序。 我的程序的组织方式只是一系列函数,然后是调用函数的部分。像这样构造它,而不是将函数放在主代码中,有什么不对吗。 例如: def a(): do a list of things def b(): do b list of things a(argumenta) b(argumentb) 而不是 do a list of things do b list of thing

我是python的新手,如果这是一个奇怪的问题,我很抱歉。 对于课堂作业,我们必须制作一个程序。 我的程序的组织方式只是一系列函数,然后是调用函数的部分。像这样构造它,而不是将函数放在主代码中,有什么不对吗。 例如:

def a():
    do a list of things

def b():
    do b list of things

a(argumenta)    
b(argumentb)
而不是

do a list of things
do b list of things

我发现在函数中一次测试代码部分更容易。我需要重新构造我所有的代码吗?还是可以。我的代码目前有220行,只是在某些范围内。很抱歉格式不好,请提前向您表示感谢。

如果您不想使用递归,也可以。 我认为使用递归将帮助您获得更多分数

def a():
    do a list of things

    if true_condition:
        a(argumenta)
    elif condition:
        b(argumentb)
    else:
        return

def b():
    do b list of things
    if true_condition:
        b(argumentb)
    elif condition:
        a(argumenta)
    else:
        return   

使用递归的结构取决于您和您的要求

简短回答:不。使用函数不仅没有问题,而且非常好

更多说明:具有多个函数的代码优于非结构化代码。 非结构化代码很难测试、维护和阅读,为了理解代码的每一部分都在做什么,您必须阅读大量代码。但是,例如,如果您已经将代码结构化为函数,那么您只需通过查看函数名就可以理解每个部分。通过使用函数,您的代码将更具可读性、可测试性和可维护性,而且这样做还可以减少重复代码

例如,在示例代码中,可以随时多次调用a()和b()函数(如在循环或递归函数中)


根据您的编程范例,您可以在更抽象的结构(如类)中构造代码,也可以在类(方法)中使用函数。

事实上,在大多数情况下,这是一个好主意。谷歌搜索干净的代码或可靠的原则等将为您提供大量的理由和意见。FWIW,过度使用被称为“错误的抽象”,但您可能还没有编写足够复杂的程序来解决这个问题。