Strings is just another word for text and in order to write strings you need to use the " quotation signs or ' apostrophe signs. This part will go through some practical ways to work with and modify strings to your specification. We will start to work with the classic analyst phrase. "Please Fix Thx." and modify that one throughout the examples on this page. Let's start with adding the text parts in to three strings.
# Text variables. A = "Please" B = "Fix" C = "Thx." # Alternatively with apostrophes.. A = 'Please' B = 'Fix' C = 'Thx.'
Below are some examples of your normal text operations
We can combine or join strings with the and '+' operator where we can mix variables and texts.
'No spaces print (A + B + C) --> "PleaseFixThx." 'With spaces print (A + " " + B + " " + C) --> "Please Fix Thx."
Now Let's add them all into one string D for further modifications.
'Let's make sure these are added into one string D. D = A + " " + B + " " + C
#Now let's take out the first part ("Please") from D. # Every character (chr) is considered 1 item in an array of letters meaning we can just index our chr we want from our text string "array" D[:6] --> Please
#Let's take out the last part ("Thx.") D[-4:] --> Thx.
# To isolate the middle part in the text we need to consider that the starting position in python is 0 here. # same as Mid(D, 8, 3) in excel. D[7:10] --> Fix
Split is a practical syntax for dividing a string into multiple ones based on a separator sign.
# Split syntax is dividing a string into multiple smaller strings based on a separator. In our case we are splitting based on blank space " ". D.split(" ") --> ['Please', 'Fix', 'Thx.'] D.split(" ") --> Please D.split(" ") --> Fix D.split(" ") --> Thx In case we want print out all substrings from our original string without having to index we can loop like below. Learn more about looping in python here: https://www.pls-fix-thx.com/post/while-for-loop-python #print out each out in my list. for x in range(len(D.split(" "))): print (D.split(" ")[x]) #we can also retrieve our split item from reverse. D.split(" ")[-1] --> 'Thx.' #we can count the number of items are split would generate with.. len(D.split(" ")) --> 3
'Replace function 'Replace a character with another one of your choosing. D.replace(" ", "-") 'Please-Fix-Thx.'
#Strip syntax is similar to trim function in excel. #First let's assign D variable with some white spaces. D = ' ' + D + ' ' --> ' Please Fix Thx. ' #leading and trailing spaces. D.strip() --> 'Please Fix Thx.' #Remove whitespace before. D.lstrip() --> 'Please Fix Thx. ' #Remove whitespace after D.rstrip() --> ' Please Fix Thx.'
Removing whitespace in python
#note that strip function does not remove whitespace in the middle of the text. and there is no pre defined strip function, which achieves this. A practical way of solving this would be to convert the string to a list and the join the needed words with a single whitespace " ". " ".join(list(filter(len, D.split(" ")))) --> 'Please Fix Thx.' another way to solve it in a similar way is the the use of lambda functions which is basically your own custom function. " ".join(list(filter(lambda x: x != "", D.split(" "))))
#We can also test that the previous statement really added more characters (chr) with the len syntax to get the length of the variable. #Length of string. len(D) --> 21 chr #Length of "Please Fix Thx." len("Please Fix Thx.") --> 15chr.
#This is perhaps not the most frequently used function ever. However I think it shows the effectiveness in python. that we in a few characters of code can reverse a string with the following syntax. D[::-1] --> '.xhT xiF esaelP'
#Return the starting position for a substring or a character. #note that it returns the first match. D.find("Fix") --> 7 #returns starting position for substring.1st "e" from the left. D.find("e") --> 2 In case we have multiple of a given character and need to reverse search the textstring we can use the rfind syntax. #1st "e" from the right D.rfind("e") --> 5
#Count number of times substring in string. D.count("e") --> there are 2 e in "Please Fix Thx."
Converting to lowercase letters
D.lower() --> 'please fix thx.'
Converting to uppercase letter
D.upper() --> 'PLEASE FIX THX.'
Boolean functions for testing what kind of word it is.
#a few useful functions for testing what kind of word it is that will return a boolean response, which is either True or False. #testing if the string is only numeric. D.isnumeric() #testing if the string is only alphabetic. D.isalpha() #testing if the string is alphabetic or numeric D.isalnum() #checks if text is only lower caps. D.islower() #checks if text is only upper caps. D.isupper()
Learn more about Python here for all my posts: https://www.pls-fix-thx.com/python
If you have found this article or website helpful. Please show your support by visiting the shop below.