Bill Allen wrote:
I have found that there are a couple of ways to convert a byte array to a
string in Python. Is there any advantage or disadvantage to either method?
my_bytes = b'this is a test'
str(my_bytes,'utf-8') yields 'this is a test'
my_bytes.decode('utf-8';) yeilds 'this is a test'
Not so far as I know. The decode method is a *tiny* bit faster:
>>> from timeit import Timer
>>> t1 = Timer("str(my_bytes,'utf-8')", "my_bytes = b'this is a test'")
>>> t2 = Timer("my_bytes.decode('utf-8')", "my_bytes = b'this is a test'")
>>> min(t1.repeat())
0.670975923538208
>>> min(t2.repeat())
0.5184659957885742
Those figures are in seconds, for one million calls. So the actual speed
difference is about 0.1 of a microsecond, almost always too trivial to
care about.
--
Steven
_______________________________________________
Tutor maillist - Tutor@python.org
To unsubscribe or change subscription options:
http://mail.python.org/mailman/listinfo/tutor