Вы возвращаетесь сразу после первого элемента цикла for
, а не после его завершения. Отмените отступ в return
заявлении, и с вами все будет в порядке:
def only_upper(t):
res = []
for s in t:
if s.isupper():
res.append(s)
return res # Here!
Также стоит упомянуть, что часто проще написать фильтры, подобные этим, в списках, вместо реализации всей логики:
print([x for x in t if x.isupper()])