>>> hex(-7)
'-0x7'
>>> int('-7', 16)
-7
>>> int('-111', 2)
-7

これに習って2進文字列にする関数を書くなら、
>>> bin(-7)
'-111'
となるべき?