我正在解决下面的问题,但我对如何设置主要功能感到困惑:
编写一个程序,接受用户提供的数字列表。编写和测试两个函数以满足以下规范:
squareEach(nums),nums是一个数字列表,返回列表中每个数字的平方列表
sumList(nums),nums是一个数字列表,返回列表中数字的总和
打印原始列表,平方值列表和列表总和。
#import reduce function
from functools import reduce
def numbers(n):
numbers = []
data = input("Enter a number or press Enter to quit: ")
while True:
#request input from user
data = input("Enter a number or press Enter to quit: ")
#set up the termination condition
if data == "":
break
#define square function
def SquareEach(numbers):
return map(lambda x: x**2, numbers)
#define sum function
def SumList(numbers):
return map(lambda x, y: x + y, numbers)
#main program start
def main():
#main program end
main()
答案 0 :(得分:-1)
我将按如下方式编写每个函数
对列表理解中的每个元素进行平方
def sqauareEach(nums):
return [num**2 for num in nums]
只需使用内置的sum
功能
def sumList(nums):
return sum(nums)
如果你必须“手动”编写第二个函数而不使用内置函数,你可以使用for
循环
def sumList(nums):
total = 0
for num in nums:
total += num
return total
输入数字列表
def getInputs():
entry = input('Enter values delimeted by space: ')
return [int(i) for i in entry.split()]
最后main
只是
def main():
nums = getInputs()
squares = squareEach(nums)
total = sumList(nums)
然后,如果需要,可以添加一些print
语句来输出这些值。