您正在將字符串傳遞給bin()函數(shù):>>> bin('10')Traceback (most recent call last): File "<stdin>", line 1, in <module>TypeError: 'str' object cannot be interpreted as an index給它一個(gè)整數(shù)來(lái)代替:>>> bin(10)'0b1010'通過(guò)將raw_input()結(jié)果轉(zhuǎn)換為int():n = int(raw_input())提示:您可以通過(guò)給負(fù)片跨度輕松地反轉(zhuǎn)字符串:>>> 'forward'[::-1]'drawrof'因此您可以將功能簡(jiǎn)化為:def reversebinary(): n = int(raw_input()) bin_n = bin(n)[2:] revbin = bin_n[::-1] return int(revbin, 2)甚至:def reversebinary(): n = int(raw_input()) return int(bin(n)[:1:-1], 2)
添加回答
舉報(bào)
0/150
提交
取消