If the switch is close to the input pin, internal pullup should be OK. However, note that some switches specify a minimum DC switching current to operate reliably (could be 1mA). In this case, a lower value external pullup resistor is required.
If the switch has longer wires and/or located close to the lamp, then a lower value external pullup resistor is required to make a stronger signal and reduce noise pickup through the cables. If the lamp is AC, filtering or debouncing of the signal might be required.