擅长:python、mysql、java
<p>这种方法的问题是,当从<code>input</code>读取数据时,总是会得到一个字符串,因此必须将标记转换为整数来计算平均值。我会这样做:</p>
<pre><code>def calcMarks():
# unpack the input into user and marks
# having split the string by ','
user, *marks = input('Enter marks:').split(',')
# take the average of the marks cast to int
avg_mark = sum(map(int,marks))/(len(marks))
# you can use f-strings to print the output
print(f'{user} has an average of {avg_mark}')
# print('{} has an average of {}'.format(user, avg_mark)) # for python 3.5<
</code></pre>
<hr/>
<pre><code>calcMarks()
Enter marks:Jack,10,10,9,10,10
Jack has an average of 9.8
</code></pre>