如何编写程序来解决这个问题?

2024-10-02 06:28:28 发布

您现在位置:Python中文网/ 问答频道 /正文

假设给你一个数字列表。列表可以是任意长度。您的朋友让您查找列表中最后4个数字、最后2个数字和最高数字的平均值。另一方面,您的另一位朋友想知道列表的长度以及前半部分元素的列表。在这种情况下,如果列表中的元素总数为n奇数,则要求n-1列出元素列表的前半部分

例如:如果a=[1,2,3,4,5,6]是一个数字列表。列表中的最后4个数字、最后2个数字和最高数字是3,5,6…那么3,5,6的平均值是4.67…该列表的长度是6,前半部分元素的列表是[1,2,3]

在python中如何实现这一点


Tags: 元素列表情况朋友数字平均值奇数总数
2条回答

您应该自己尝试,但您可以从以下内容开始:

a=[1,2,3,4,5,6]
fourthLast = a[-4] # output -> 3
secondLast = a[-2] # output -> 5
highest = max(a)   # output -> 6
avg = (fourthLast+secondLast+highest)/3 # output -> 4.66
firstHalf = a[:len(a)//2] # output -> [1,2,3]

您可以通过将所有逻辑包装到一个函数中来做同样的事情,并根据需要多次使用该函数,而无需再次复制该逻辑。只需将列表传递给该函数,即可获得所需的结果

def applyStats(listOfIntegers):
    fourthLast = listOfIntegers[-4] # output -> 3
    secondLast = listOfIntegers[-2] # output -> 5
    highest = max(listOfIntegers)   # output -> 6
    avg = (fourthLast+secondLast+highest)/3 # output -> 4.66
    firstHalf = listOfIntegers[:len(listOfIntegers)//2] # output -> [1,2,3]
    print("Average of fourth,second and highest is: %.2f" % avg)
    print("First Half of list is:", firstHalf)

myList = [1,2,30,10,5,6,0.1,9]
applyStats(myList)

要查找数字的平均值,请执行以下操作:

lst = [1,2,3,4,5,6,7] # this can have any numbers u want
print(sum([lst[-4],lst[-2], max(lst)])/3)

lst[-4]let[-2]被向后索引并除以2,因为我们想找到两个数字的平均值。 要查找列表中的最大值,请执行以下操作:

print(max(lst))

列表长度:

print(len(lst))

对于一半名单:

print(lst[:len(lst)//2])

附言:你可能应该通过官方的Python docs来尝试这些例子,它们很简单

相关问题 更多 >

    热门问题