De sql-argumenten die u doorgeeft aan execute
moet in een tuple of lijst staan, zelfs als er maar één van is. Dit staat vermeld in de documentatie:
Voor binding van positionele variabelen moet het tweede argument altijd een reeks zijn, zelfs als het een enkele variabele bevat. En onthoud dat Python een komma nodig heeft om een tuple met één element te maken:
Dus je moet het als volgt doen:
ip ="127.0.0.1"
sql="select count(*) from radacct where nasipaddress=%s"
cur.execute(sql, (ip,))