違う
isはあくまでも参照を比較する
間違っているのは「aとbは違うオブジェクト」の部分
CPythonはパフォーマンス目的で-5から256までの整数をシングルトンで確保しており、
通常はそれらの数字が新たなオブジェクトとして生成されることはない
だからisで比較してもTrueになる