Я пытаюсь написать программу Python, которая будет принимать данный список и возвращать среднее значение.
#program name: average.py, author: Leo
import argparse
parser = argparse.ArgumentParser()
parser.add_argument("-lst", nargs='+', type=int, required=True)
xyz = parser.parse_args()
def GetAvg(xyz):
total = 0
for i in xyz:
total = total + i
finalAvg = total / len(xyz)
return finalAvg
if __name__ == "__main__":
GetAvg(xyz)
Когда я запускаю его в командной строке cmd, я запускаю его как
python average.py -lst 4 5 7 3 2
Однако я всегда получаю сообщение об ошибке: 'Namespace' object is not iterable
.
Когда Я делаю print(xyz)
, он возвращает "Namespace(lst=[4, 5, 7, 3, 2])"
.
Итак, мой вопрос: как мне заставить эту функцию использовать список в пространстве имен? или я использую какую-то другую функцию argparse
для выполнения sh этого?
Я прошу прощения за любой неправильный синтаксис или стиль, первое сообщение в StackOverflow.