【发布时间】:2020-03-13 01:37:22
【问题描述】:
from bisect import bisect
grades = "FEDCBA"
breakpoints = [30, 44, 66, 75, 85]
def grade(total):
return grades[bisect(breakpoints, total)]
print(grade(66))
print(list(map(grade, [33, 99, 77, 44, 12, 88])))
'''
C
['E', 'A', 'B', 'D', 'F', 'A']
[Program finished]'''
不是我的程序。恩基进口。
Bisect 模块支持以排序顺序维护列表,而无需在每次插入后对列表进行排序。
所以,当我们打电话给grade(66)。它将 66 传递给返回 C 的等级函数,如何?
第二个打印语句更令人困惑。
它是用列表映射功能等级。
如果我尝试打印,print (grades[bisect(breakpoints, grades)]),
我错了,
TypeError: '
【问题讨论】:
标签: python-3.x