execute
に渡すSQL引数 タプルまたはリストに含まれている必要があります(1つしかない場合でも)。これはドキュメントに記載されています:
位置変数バインディングの場合、2番目の引数は、単一の変数が含まれている場合でも、常にシーケンスである必要があります。また、Pythonでは単一要素のタプルを作成するためにコンマが必要であることを忘れないでください:
したがって、次のようにする必要があります:
ip ="127.0.0.1"
sql="select count(*) from radacct where nasipaddress=%s"
cur.execute(sql, (ip,))