<div dir="ltr">Ah. That makes a lot of sense, actually. Anyway, so then Latin1 strings are memcmp-able, and others are not. That's fine; I'll just add a check for that (I think there are already helper functions for this) and then have two special-case string functions. Thanks!<br><div><br><div class="gmail_quote"><div dir="ltr">On Wed, Oct 12, 2016 at 4:08 PM Alexander Belopolsky <<a href="mailto:alexander.belopolsky@gmail.com">alexander.belopolsky@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr" class="gmail_msg"><div class="gmail_extra gmail_msg"><br class="gmail_msg"><div class="gmail_quote gmail_msg">On Wed, Oct 12, 2016 at 5:57 PM, Elliot Gorokhovsky <span dir="ltr" class="gmail_msg"><<a href="mailto:elliot.gorokhovsky@gmail.com" class="gmail_msg" target="_blank">elliot.gorokhovsky@gmail.com</a>></span> wrote:<br class="gmail_msg"><blockquote class="gmail_quote gmail_msg" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><span class="m_6319517132634887640gmail- gmail_msg"><div dir="ltr" class="gmail_msg">On Wed, Oct 12, 2016 at 3:51 PM Nathaniel Smith <<a href="mailto:njs@pobox.com" class="gmail_msg" target="_blank">njs@pobox.com</a>> wrote:<br class="m_6319517132634887640gmail-m_5193745573476358638gmail_msg gmail_msg"></div><blockquote class="gmail_quote gmail_msg" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
But this isn't relevant to Python's str, because Python's str never uses UTF-8.<br class="m_6319517132634887640gmail-m_5193745573476358638gmail_msg gmail_msg"></blockquote><div class="gmail_msg"><br class="gmail_msg"></div></span><div class="gmail_msg">Really? I thought in python 3, strings are all unicode... so what encoding do they use, then? </div></blockquote></div><br class="gmail_msg"></div></div><div dir="ltr" class="gmail_msg"><div class="gmail_extra gmail_msg">No encoding is used.  The actual code points are stored as integers of the same size.  If all code points are less than 256, they are stored as 8-bit integers (bytes).  If some code points are greater or equal to 256 but less than 65536, they are stored as 16-bit integers and so on.</div></div>
</blockquote></div></div></div>