好きなようにやればいいじゃない!
ただ性能的にfilterよりジェネレータ式使ったほうがいいかもね

def third(x): return x[2]
min(S, key=third)
min((x for x in S if x[1]<=L), key=third)
min((x for x in S if x[0]<=L and x[1]>=L), key=third)