Raspi GPIO 4, 5 and 6 won't accept input

Anybody know why GPIO.PinMode(kButtonPin, GPIO.INPUT) doesn’t work with GPIO pins 4 thru 8 or 14 and 15, but works just fine for 12, 13, and 16 thru 27?
Because GPIO.PinMode(kLEDPin, GPIO.OUTPUT) works just fine for controlling an LED on these pins. It just seems to be in input issue. I am using an extra 10K resistor on the switch just in case and only 3.3v.
I realize some pins double as special; 14 and 15 for serial comms, for example. But for the others, it’s as if the polarity is reversed or something. (There’s my ignorance showing). I don’t have SPI, I2C, or 1-Wire enabled, so shouldn’t these pins just function as both input or output?

Arg! After another 3 hours, I figured it out. Apparently, you not only have to set the pin to input, but also set the internal pull-down resistor on or off. I prefer to use switches to ground instead of power, so with that logic, I have to pull-up the GPIO.

GPIO.PinMode(6, GPIO.INPUT) GPIO.PullUpDnControl(6, GPIO.PUD_UP)

If one end of the switch is wired to GROUND and the other to a GPIO, you need a PULL-UP on the GPIO.
Then the GPIO will read HIGH normally and will read LOW when the switch is closed.

If one end of the switch is wired to 3V and the other to a GPIO, you need a PULL-DOWN on the GPIO.
Then the GPIO will read LOW normally and will read HIGH when the switch is closed.

I need a drink… }:@(

I’m sorry that no one provided an answer but thank you for responding to your own post and letting us know what you discovered.