How to delete a character from a string using python?

There is a string, for example EXAMPLE

How can I remove the middle character ie M from it. I don't need the code, what I want to know is

  • Do strings in python end in any special character?
  • Which is a better way - shifting everything right to left starting from the middle character OR creation of a new string and not copying the middle character?

  • In Python, strings are immutable, so you have to create a new string. You have a few options of how to create the new string. If you want to remove the 'M' wherever it appears:

    newstr = oldstr.replace("M", "")
    

    If you want to remove the central character:

    midlen = len(oldstr)/2
    newstr = oldstr[:midlen] + oldstr[midlen+1:]
    

    You asked if strings end with a special character. No, you are thinking like a C programmer. In Python, strings are stored with their length, so any byte value, including , can appear in a string.


    This is probably the best way:

    original = "EXAMPLE"
    removed = original.replace("M", "")
    

    Don't worry about shifting characters and such. Most python takes place on a much higher level of abstraction.


    To replace a specific position:

    s = s[:pos] + s[(pos+1):]
    

    To replace a specific character:

    s = s.replace('M','')
    
    链接地址: http://www.djcxy.com/p/42724.html

    上一篇: Python:获取转义的SQL字符串

    下一篇: 如何使用python从字符串中删除一个字符?