The content of this article is to share with you some tips on how to use strip in Python. It has a certain reference value. Friends in need can refer to it
【Appetizers】
When it comes to the strip method in python, everyone who has been exposed to python must know that it is mainly used to remove spaces. There are two ways to achieve this.
Method 1: Use the built-in function
#<python> if __name__ == '__main__': str = ' Hello world ' print '[%s]' %str.strip() #</python>
Method 2: Call the method in the string module
#<python> import string if __name__ == '__main__': str = ' Hello world ' print '[%s]' %string.strip(str) #</python>
I wonder if you know the difference between these two calls? The following are some personal opinions
Ø str.strip() is a built-in function that calls python, string.strip(str) is a method that calls the string module
Ø string.strip(str) It is defined in the string module. And str.strip() is defined in the builtins module
Question 1: How to check whether a method in a module is defined in a built-in module?
Use dir (module name) to see if there is a '__builtins__' attribute.
For example: View the string module
#<python>print dir(string)#</python>
Question 2. How to view all built-in functions in python
#<python> print dir(sys.modules['__builtin__']) #</python>
Question 3, How to view the built-in function definitions in built-in modules
#<python>printhelp(__builtins__) #</python>
The above are all things that everyone usually knows. Let’s get into this article Topic:
[Hard Dish in Rice]
First of all, please take a look at the results of the following program:
#<python> if __name__ == '__main__': str = 'hello world' print str.strip('hello') print str.strip('hello').strip() print str.strip('heldo').strip() #sentence 1 stt = 'h1h1h2h3h4h' print stt.strip('h1') #sentence 2 s ='123459947855aaaadgat134f8sfewewrf7787789879879' print s.strip('0123456789') #sentence 3 #</python>
The results are shown on the next page:
Run results:
world world wor 2h3h4 aaaadgat134f8sfewewrf
Did you answer correctly? O(∩_∩)O~
If you got all the answers correct, I will give you 32 likes here...
Result analysis:
First, let’s take a look at the strip source code in the string module:
#<python> # Strip leading and trailing tabs and spaces def strip(s, chars=None): """strip(s [,chars]) -> string Return a copy of the string swith leading and trailing whitespace removed. If chars is given and not None,remove characters in chars instead. If chars is unicode, S will beconverted to unicode before stripping. """ returns.strip(chars) #</python>
Let’s take the liberty of translating it: This method is used to remove leading and trailing spaces and tabs. Returns a copy of the S string with spaces removed. If the parameter chars does not have a value of None, then all characters appearing in chars are removed. If chars is unicode, S is converted to unicode before operation.
The following is an explanation of sentence1 \2 \3 in the above paragraph:
#<python> str = 'hello world' print str.strip('heldo').strip() #</python> result:wor 执行步骤: elloworld lloworld oworld oworl worl wor wor
Specific code execution process:
#<python> print str.strip('h') print str.strip('h').strip('e') print str.strip('h').strip('e').strip('l') print str.strip('h').strip('e').strip('l').strip('d') print str.strip('h').strip('e').strip('l').strip('d').strip('o') print str.strip('h').strip('e').strip('l').strip('d').strip('o').strip('l') printstr.strip('h').strip('e').strip('l').strip('d').strip('o').strip('l').strip() #</python>
I don’t know if you understand the mystery. I discovered this rule with the help of project manager Shaan Fenyong.
Now a little summary:
s.strip(chars) usage rules:
First traverse the first character in chars to see if it is at the beginning and end of S , if so, remove it. Set the removed new string to s and continue looping, starting from the first character in chars. If not, start directly from the second character of chars. Keep looping until the first and last characters in s are not in chars, then the loop terminates.
Key point: Check whether the characters in chars are at the beginning and end of S
After reading this method, I found that the python source code developer is so awesome, even such a classic algorithm is thought of out.
[After-dinner pastries]
This method is mainly used to remove specified characters at both ends according to specific rules. If sentence3 is a good application.
For example: intercept the numbers at both ends of the string, or get the string between the first and last occurrence of the characteristic character, etc.
The above is the detailed content of Tips on how to use strip in Python. For more information, please follow other related articles on the PHP Chinese website!