In Python, if I have a string like:
a =" Hello - to - everybody"
And I do
a.split('-')
then I get
[u'Hello', u'to', u'everybody']
This is just an example.
How can I get a simple list without that annoying u’??
Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.
Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.
Lost your password? Please enter your email address. You will receive a link and will create a new password via email.
Please briefly explain why you feel this question should be reported.
Please briefly explain why you feel this answer should be reported.
Please briefly explain why you feel this user should be reported.
The
umeans that it’s a unicode string – your original string must also have been a unicode string. Generally it’s a good idea to keep strings Unicode as trying to convert to normal strings could potentially fail due to characters with no equivalent.The
uis purely used to let you know it’s a unicode string in the representation – it will not affect the string itself.In general, unicode strings work exactly as normal strings, so there should be no issue with leaving them as unicode strings.
In Python 3.x, unicode strings are the default, and don’t have the
uprepended (instead,bytes(the equivalent to old strings) are prepended withb).If you really, really need to convert to a normal string (rarely the case, but potentially an issue if you are using an extension library that doesn’t support unicode strings, for example), take a look at
unicode.encode()andunicode.decode(). You can either do this before the split, or after the split using a list comprehension.