在列表中打印一定数量的行

时间:2017-02-06 16:06:38

标签: python

我的一个家庭作业问题要求我编写一个有两个参数的函数。一个是字符串列表(地震信息),第二个是数字。如果数字为-1,则必须在列表中打印每个地震字符串,每行一个。如果数字是1或更多,那么它必须只打印那么多地震串,从列表中的第一个开始。如果数量大于地震弦的数量,则必须打印所有地震弦。到目前为止,我有以下内容:

    def printQuakes(alist, num):
        if num == -1:
            for line in alist:
                return alist
        elif num >= 1:
            for line in alist:
                return alist[num]

当我用-1打印函数时,它会打印整个信息列表,但不是每行一个。然后代码的第二部分仅打印与参数中的数字对应的行。我知道这是因为我有alist [num],但我不知道如何让它返回之前的所有行,因为问题要求我这样做。当参数为-1时,如何更改代码以每行打印一行,如何在参数为1或更高时打印与参数调用相同的行数。谢谢大家!谢谢。

1 个答案:

答案 0 :(得分:0)

使用alist[:num]选择列表中的num个第一个元素

def printQuakes(alist, num):
    if num == -1:
        for line in alist:
            print line
    elif num >= 1:
        for line in alist[:num] :
            print line