Re:Comprehensions in Python the Jedi way
by d0mine on Sunday March 27, 2016 @10:57AM
(#11370133)
There is an easier way to convert bits to ASCII, filter spaces and reverse the string:
http://stackoverflow.com/questions/7396849/convert-binary-to...
[ Parent
| on HN ]
Re:Comprehensions in Python the Jedi way
by bearfrieze on Sunday March 27, 2016 @02:31PM
(#11370934)
I like the replace method. It's a great way of doing the same thing.
I considered using the [::-1] syntax to reverse the list, but decided that there was enough "cute" stuff in the examples already.
[::-1] is an idiomatic way to reverse a string in Python that is the obvious way for a habitual user of the language to do it e.g.:
def palindrome(s):
return s == s[::-1]
It could be discussed whether ''.join(reversed(s)) is more readable for a novice programmer learning Python. In general, Python prefers words over punctuation.Also, there are objects that can be reversed() that are not sequences.
http://stackoverflow.com/questions/931092/reverse-a-string-i...
Another alternative, works on both py2/3, assuming you replace bbs='000... with bbs=b'000...
import struct
result=''.join([chr(int(bits,2)) for bits in struct.unpack('8p'*(int(len(bbs)/8)),bbs)])
print(result.replace(' ','')[::-1])