Yes, a sports coat can be a great option for semi-formal events. Pair it with dress pants, a dress shirt, and dress shoes for a polished look.