Removing u in list

remove u' python json
python remove unicode u from dictionary
remove u' from tuple python
remove u in list python
django remove u
python print list without u
python u a
remove u from dataframe python

I have read up on remove the character 'u' in a list but I am using google app engine and it does not seem to work!

def get(self):
    players = db.GqlQuery("SELECT * FROM Player")
    print players
    playerInfo  = {}

    test = []

    for player in players:
        email =  player.email
        gem =  str(player.gem)
        a = "{email:"+email + ",gem:" +gem +"}"

        test.append(a)


    ast.literal_eval(json.dumps(test))
    print test

Final output:

[u'{email:test@gmail.com,gem:0}', u'{email:test,gem:0}', u'{email:test,gem:0}', u'{email:test,gem:0}', u'{email:test,gem:0}', u'{email:test1,gem:0}']

That 'u' is part of the external representation of the string, meaning it's a Unicode string as opposed to a byte string. It's not in the string, it's part of the type.

As an example, you can create a new Unicode string literal by using the same synax. For instance:

>>> sandwich = u"smörgås"
>>> sandwich
u'sm\xf6rg\xe5s'

This creates a new Unicode string whose value is the Swedish word for sandwich. You can see that the non-English characters are represented by their Unicode code points, ö is \xf6 and å is \xe5. The 'u' prefix appears just like in your example to signify that this string holds Unicode text.

To get rid of those, you need to encode the Unicode string into some byte-oriented representation, such as UTF-8. You can do that with e.g.:

>>> sandwich.encode("utf-8")
'sm\xc3\xb6rg\xc3\xa5s'

Here, we get a new string without the prefix 'u', since this is a byte string. It contains the bytes representing the characters of the Unicode string, with the Swedish characters resulting in multiple bytes due to the wonders of the UTF-8 encoding.

Remove 'u' from a python list, In your current code, you are iterating on a string, which represents a list, hence you get the individual characters. >>> from ast import  I have a python list of list as follows. I want to flatten it to a single list. l = [u'[190215]'] I am trying. l = [item for value in l for item in value] It turns the list to [u'[', u'1', u'9', u'0', u'2', u'1', u'5', u']'] How to remove the u from the list.

arr = [str(r) for r in arr]

This basically converts all your elements in string. Hence removes the encoding. Hence the u which represents encoding gets removed Will do the work easily and efficiently

Removal of Unicode (u) from a list - Python, Hi, How can I remove unicode character(u) from a list output? Example: [[u'r118', u'BB']] [[u'r119', u'BB']] I want the output to be without "u". Removal of Unicode (u) from a list. Python Forums on Bytes. Need help? Post your question and get tips & solutions from a community of 452,723 IT Pros & Developers.

The u means the strings are unicode. Translate all the strings to ascii to get rid of it:

a.encode('ascii', 'ignore')

Removing u in list, I have read up on remove the character u in a list but I am using google app engine and it does not seem to workdef getself players If a list contains duplicate elements, the remove () method only removes the first matching element. # animals list animals = ['cat', 'dog', 'dog', 'guinea pig', 'dog'] # 'dog' is removed animals.remove('dog') # Updated animals list print('Updated animals list: ', animals)

u'AB' is just a text representation of the corresponding Unicode string. Here're several methods that create exactly the same Unicode string:

L = [u'AB', u'\x41\x42', u'\u0041\u0042', unichr(65) + unichr(66)]
print u", ".join(L)
Output
AB, AB, AB, AB

There is no u'' in memory. It is just the way to represent the unicode object in Python 2 (how you would write the Unicode string literal in a Python source code). By default print L is equivalent to print "[%s]" % ", ".join(map(repr, L)) i.e., repr() function is called for each list item:

print L
print "[%s]" % ", ".join(map(repr, L))
Output
[u'AB', u'AB', u'AB', u'AB']
[u'AB', u'AB', u'AB', u'AB']

If you are working in a REPL then a customizable sys.displayhook is used that calls repr() on each object by default:

>>> L = [u'AB', u'\x41\x42', u'\u0041\u0042', unichr(65) + unichr(66)]
>>> L
[u'AB', u'AB', u'AB', u'AB']
>>> ", ".join(L)
u'AB, AB, AB, AB'
>>> print ", ".join(L)
AB, AB, AB, AB

Don't encode to bytes. Print unicode directly.


In your specific case, I would create a Python list and use json.dumps() to serialize it instead of using string formatting to create JSON text:

#!/usr/bin/env python2
import json
# ...
test = [dict(email=player.email, gem=player.gem)
        for player in players]
print test
print json.dumps(test)
Output
[{'email': u'test@gmail.com', 'gem': 0}, {'email': u'test', 'gem': 0}, {'email': u'test', 'gem': 0}, {'email': u'test', 'gem': 0}, {'email': u'test', 'gem': 0}, {'email': u'test1', 'gem': 0}]
[{"email": "test@gmail.com", "gem": 0}, {"email": "test", "gem": 0}, {"email": "test", "gem": 0}, {"email": "test", "gem": 0}, {"email": "test", "gem": 0}, {"email": "test1", "gem": 0}]

python, s = "u'mystring'" # assuming it is always u' s2 = s.replace("u'", "'") print s2 # '​mystring'. Removes the first occurrence of a specific object from the List<T>. public: virtual bool Remove (T item); C#. public bool Remove (T item); abstract member Remove : 'T -> bool override this.Remove : 'T -> bool. Public Function Remove (item As T) As Boolean.

[u'{email:test@gmail.com,gem:0}', u'{email:test,gem:0}', u'{email:test,gem:0}', u'{email:test,gem:0}', u'{email:test,gem:0}', u'{email:test1,gem:0}']

'u' denotes unicode characters. We can easily remove this with map function on the final list element

map(str, test)

Another way is when you are appending it to the list

test.append(str(a))

Noticing 'u' preceding each string while printing an array of strings , Noticing 'u' preceding each string while printing an array of strings To use it on a list, either use a list comprehension: print [str(a) for a in animals]. For example, if an edge between (u, v) has to be added, then u is stored in v’s vector list and v is stored in u’s vector list. Deleting an edge: To delete edge between (u, v), u’s adjacency list is traversed until v is found and it is removed from it. The same operation is performed for v.

Handling Unicode Strings in Python, u"✓ means check".encode("utf-8") b'\xe2\x9c\x93 means check' >>> u"✓ In python2, if you print a unicode string that is in some container (list,  Within the the Tools section, select “Uninstall” and then from the list of programs select the program you wish to remove the entry for. Select the “Delete” button.

Overcoming frustration: Correctly using unicode in python2 , test.py", line 4, in <module> print u'café' UnicodeEncodeError: 'ascii' codec can't encode The implicit conversions between bytes and unicode is removed and  Go to Control Panel (Windows + X Keys together and select Control Panel) Click Language applet. In the resultant Window click Options on the right hand side of the default language. Under Input Languages move the language you want to keep to the top of the list (set as default) Then delete the English US Keyboard.

How can i delete the “u” from the list output? · Issue #49117 , @zhangmingld, this is how Ansible will display back variables used in the task in unicode format by default. Are you trying to remove the output 

Comments
  • the character "u" isn't in the list, it's in the repr of a unicode string, which is what's printed if you try to print a whole list.
  • The u denotes Unicode strings. It doesn't seem to be a problem by itself that the list contains Unicode strings, so what's your actual issue?
  • The code ast.literal_eval(json.dumps(test)) calculates a value and then throws it away.
  • Don't confuse a Unicode string (an object in memory) and its text representation (that you could use to specify the object in Python source code). Consider print(sandwich) vs. print(repr(sandwich)). Don't encode text to bytes.
  • Although this code may help to solve the problem, it doesn't explain why and/or how it answers the question. Providing this additional context would significantly improve its long-term educational value. Please edit your answer to add explanation, including what limitations and assumptions apply.
  • And use StackOverflow's code formatting markdown to code-format your snippets ;)
  • This basically duplicates an existing answer stackoverflow.com/a/39771186/874188
  • Hey @tripleee try to use timeit for both the solutions. You will be able to see the difference. Map method is faster. And test.append(str(a)) is creating list simultaneously not iterating upon the list after creating the list hence saving the time.
  • you don't need to encode a Unicode string; you could print it directly print(unicode_string), example
  • Depends on where you're outputting it to.
  • obviously, though the default is still: use Unicode to work with text in Python. Don't encode to bytes unless necessary (my answer shows that it is not necessary) -- I'm sure you know the concept of Unicode sandwich