首页 > 解决方案 > 如何正确格式化python代码结构?

问题描述

我对 python 还是有点陌生​​,我正在尝试学习如何正确格式化我的代码以用于现实世界的应用程序和面试。

下面的代码将一个数字作为输入,然后返回列表中有多少个数字高于和低于给定数字。我创建了一个类 ,solution来存储函数 , placeOfNum,它执行所有的处理逻辑。

如果我想像下面那样输出我的答案,最好的做法是像下面那样调用Solution类函数,还是应该将所有内容保留在类中以帮助提高可读性,或者我应该在类中创建另一个answer函数并在该类中输出解决方案?

def placeOfNum(self, n, array):
    aboveNum = 0 
    belowNum = 0
    array = sorted(array)

    for x in array: 
        if x < n: 
            belowNum += 1
        if x > n: 
            aboveNum += 1 
     return (above, below)

numList = [1,5,21,2,1,10,232]
num = 21
x = Solution()

answer = x.placeOfNum(num, numList)
print("above:", answer[0], "below:", answer[1])

# returns "above:1, below:5"

标签: pythonpython-3.xformatting

解决方案


def place_of_num(num, array):
    above_num = 0 
    below_num = 0

    for x in array: 
        if x < num: 
            below_num += 1
        if x > num: 
            above_num += 1
    return tuple((above_num, below_num))

num_list = sorted([1,5,21,2,1,10,232])
num = 21

answer = place_of_num(num, num_list)
print(f"above: {answer[0]} and below: {answer[1]}")

我会这样写的。保持命名一致,例如对变量、函数使用snake_case,对类名使用CamelCase。保持代码简单易读


推荐阅读