Python 如何从用户处找到输入列表/名称的平均长度

Python 如何从用户处找到输入列表/名称的平均长度,python,list,function,dictionary,Python,List,Function,Dictionary,我试图找到如何找到用户输入的列表/名称的平均长度,例如:john、sam、Samantha。(全部由用户输入),它应该给出名称中有多少字母的平均长度(数字) def myNames(): b = [] while True: a = input("Enter Name: ") if a != "done": b.append(a) elif a == "done":

我试图找到如何找到用户输入的列表/名称的平均长度,例如:john、sam、Samantha。(全部由用户输入),它应该给出名称中有多少字母的平均长度(数字)

def myNames():

    b = []
    while True:
      a = input("Enter Name: ")
      if a != "done":
        b.append(a)
      elif a == "done":
       break
myNames()

def all_lengths(myNames):
  all_lengths = []
  num_of_strings = len(myNames)

  for item in myNames:
     string_size = len(item)
     all_lengths.append(string_size)
     total_size = sum(all_lengths)
  ave_size = float(total_size) / float(num_of_strings)
  print (ave_size)
all_lengths(myNames)
回溯(最近一次呼叫最后一次):
文件“main.py”,第23行,在
所有长度(MyName)
文件“main.py”,第15行,所有长度
字符串的数量=len(myNames)
TypeError:类型为“function”的对象没有len()

这就是我一直遇到的错误

您调用函数时希望结果是函数的一部分。这不是python的工作方式。您应该返回结果:

def myNames():
b=[]
尽管如此:
a=输入(“输入名称:”)
如果是“完成”:
b、 附加(a)
其他:
返回b
定义所有长度(MyName):
字符串的数量=len(myNames)
总尺寸=0
对于myNames中的项目:
总尺寸+=长度(项目)
平均大小=浮点(总大小)/浮点(字符串的数量)
打印(平均大小)
所有长度(myNames())

您正在调用函数,希望结果是函数的一部分。这不是python的工作方式。您应该返回结果:

def myNames():
b=[]
尽管如此:
a=输入(“输入名称:”)
如果是“完成”:
b、 附加(a)
其他:
返回b
定义所有长度(MyName):
字符串的数量=len(myNames)
总尺寸=0
对于myNames中的项目:
总尺寸+=长度(项目)
平均大小=浮点(总大小)/浮点(字符串的数量)
打印(平均大小)
所有长度(myNames())

您传递的是函数而不是它的结果,您忘记了括号:
所有长度(myNames())
您传递的是函数而不是它的结果,您忘记了括号:
所有长度(myNames())
您有不能使用的原因吗?另外,您当前的代码与您期望的相比做了什么?请用完整的错误回溯更新您的问题。它只会给我一堆错误,并说没有函数。不,我必须使用函数和列表。我也不知道统计数据是什么。mean()请使用完整的错误回溯更新您的问题。如果您传递的函数没有调用它,您就忘记了括号:所有长度(myNames())有不能使用的原因吗?另外,您当前的代码与您期望的相比做了什么?请用完整的错误回溯更新您的问题。它只会给我一堆错误,并说没有函数。不,我必须使用函数和列表。我不知道统计数据是什么。mean()请使用完整的错误回溯更新您的问题。如果您传递的函数没有调用它,您就忘记了括号:all_length(myNames())
Traceback (most recent call last):
  File "main.py", line 23, in <module>
    all_lengths(myNames)
  File "main.py", line 15, in all_lengths
    num_of_strings = len(myNames)
TypeError: object of type 'function' has no len()