Python String Last Updated : 12 Jun, 2025 Comments Improve Suggest changes Like Article Like Report A string is a sequence of characters. Python treats anything inside quotes as a string. This includes letters, numbers, and symbols. Python has no character data type so single character is a string of length 1. Python s = "GfG" print(s[1]) # access 2nd char s1 = s + s[0] # update print(s1) # print Outputf GfGG In this example, s holds the value "GfG" and is defined as a string.Creating a StringStrings can be created using either single (') or double (") quotes. Python s1 = 'GfG' s2 = "GfG" print(s1) print(s2) OutputGfG GfG Multi-line StringsIf we need a string to span multiple lines then we can use triple quotes (''' or """). Python s = """I am Learning Python String on GeeksforGeeks""" print(s) s = '''I'm a Geek''' print(s) OutputI am Learning Python String on GeeksforGeeks I'm a Geek Accessing characters in Python StringStrings in Python are sequences of characters, so we can access individual characters using indexing. Strings are indexed starting from 0 and -1 from end. This allows us to retrieve specific characters from the string.Python String syntax indexing Python s = "GeeksforGeeks" # Accesses first character: 'G' print(s[0]) # Accesses 5th character: 's' print(s[4]) OutputG s Note: Accessing an index out of range will cause an IndexError. Only integers are allowed as indices and using a float or other types will result in a TypeError.Access string with Negative IndexingPython allows negative address references to access characters from back of the String, e.g. -1 refers to the last character, -2 refers to the second last character, and so on. Python s = "GeeksforGeeks" # Accesses 3rd character: 'k' print(s[-10]) # Accesses 5th character from end: 'G' print(s[-5]) Outputk G String SlicingSlicing is a way to extract portion of a string by specifying the start and end indexes. The syntax for slicing is string[start:end], where start starting index and end is stopping index (excluded). Python s = "GeeksforGeeks" # Retrieves characters from index 1 to 3: 'eek' print(s[1:4]) # Retrieves characters from beginning to index 2: 'Gee' print(s[:3]) # Retrieves characters from index 3 to the end: 'ksforGeeks' print(s[3:]) # Reverse a string print(s[::-1]) Outputeek Gee ksforGeeks skeeGrofskeeG String ImmutabilityStrings in Python are immutable. This means that they cannot be changed after they are created. If we need to manipulate strings then we can use methods like concatenation, slicing, or formatting to create new strings based on the original. Python s = "geeksforGeeks" # Trying to change the first character raises an error # s[0] = 'I' # Uncommenting this line will cause a TypeError # Instead, create a new string s = "G" + s[1:] print(s) OutputGeeksforGeeks Deleting a StringIn Python, it is not possible to delete individual characters from a string since strings are immutable. However, we can delete an entire string variable using the del keyword. Python s = "GfG" # Deletes entire string del s Note: After deleting the string using del and if we try to access s then it will result in a NameError because the variable no longer exists.Updating a StringTo update a part of a string we need to create a new string since strings are immutable. Python s = "hello geeks" # Updating by creating a new string s1 = "H" + s[1:] # replacnig "geeks" with "GeeksforGeeks" s2 = s.replace("geeks", "GeeksforGeeks") print(s1) print(s2) OutputHello geeks hello GeeksforGeeks Explanation: For s1, The original string s is sliced from index 1 to end of string and then concatenate "H" to create a new string s1. For s2, we can created a new string s2 and used replace() method to replace 'geeks' with 'GeeksforGeeks'.Common String MethodsPython provides a various built-in methods to manipulate strings. Below are some of the most useful methods.len(): The len() function returns the total number of characters in a string. Python s = "GeeksforGeeks" print(len(s)) # output: 13 Output13 upper() and lower(): upper() method converts all characters to uppercase. lower() method converts all characters to lowercase. Python s = "Hello World" print(s.upper()) # output: HELLO WORLD print(s.lower()) # output: hello world OutputHELLO WORLD hello world strip() and replace(): strip() removes leading and trailing whitespace from the string and replace(old, new) replaces all occurrences of a specified substring with another. Python s = " Gfg " # Removes spaces from both ends print(s.strip()) s = "Python is fun" # Replaces 'fun' with 'awesome' print(s.replace("fun", "awesome")) OutputGfg Python is awesome To learn more about string methods, please refer to Python String Methods.Concatenating and Repeating StringsWe can concatenate strings using + operator and repeat them using * operator.Strings can be combined by using + operator. Python s1 = "Hello" s2 = "World" s3 = s1 + " " + s2 print(s3) OutputHello World We can repeat a string multiple times using * operator. Python s = "Hello " print(s * 3) OutputHello Hello Hello Formatting StringsPython provides several ways to include variables inside strings.Using f-stringsThe simplest and most preferred way to format strings is by using f-strings. Python name = "Alice" age = 22 print(f"Name: {name}, Age: {age}") OutputName: Alice, Age: 22 Using format()Another way to format strings is by using format() method. Python s = "My name is {} and I am {} years old.".format("Alice", 22) print(s) OutputMy name is Alice and I am 22 years old. Using in for String Membership TestingThe in keyword checks if a particular substring is present in a string. Python s = "GeeksforGeeks" print("Geeks" in s) print("GfG" in s) OutputTrue False Quiz:Python String QuizRelated Articles:String Slicingf Strings in PythonString Comparison in Python7 Useful String Functions in PythonConvert integer to String in PythonConvert string to integer in PythonString ConcatenationSplit String into list of Characters in PythonIterate over characters of strings in PythonPython program to convert a string to listPython program to convert a list to stringString Comparison in PythonString Formatting in PythonPython String MethodsPython String ExerciseEscape characters in PythonRecommended Problems:Welcome aboard - PythonRepeat the Strings - PythonString Functions I - PythonRegex - PythonConvert String to LowerCaseString Duplicates RemovalReverse StringCheck PalindromeClosest StringsDivisible by 7Encrypt the String – IIEqual point in a string of bracketsIsomorphic StringsCheck if two strings are k-anagrams or notPanagram CheckingMinimum DeletionsNumber of Distinct SubsequencesCheck if string is rotated by two placesImplement AtoiValidate an IP addressLicense Key FormattingFind the largest word in dictionaryEqual 0,1, and 2Add Binary StringsSum of two large numbersMultiply two stringsLook and say PatternLongest Palindromic SubsequenceLongest substring without repeating charactersSubstrings of length k with k-1 distinct elementsCount number of substringsInterleaved StringsPrint Anagrams togetherRank the permutationA Special KeyboardRestrictive Candy CrushEdit DistanceSearch Pattern (KMP-Algorithm)Search Pattern (Rabin-Karp Algorithm)Search Pattern (Z-algorithm)Shortest Common SupersequenceNumber of words with K maximum distinct vowelsLongest substring to form a PalindromeLongest Valid ParenthesisDistinct Palindromic Substrings Python String Visit Course Python String String Operations in Python [Part -1] String Operations in Python [Part -2] Comment More infoAdvertise with us Next Article Why are Python Strings Immutable? A abhishek1 Follow Improve Article Tags : Misc Python python-string Practice Tags : Miscpython Similar Reads Python String A string is a sequence of characters. Python treats anything inside quotes as a string. This includes letters, numbers, and symbols. Python has no character data type so single character is a string of length 1.Pythons = "GfG" print(s[1]) # access 2nd char s1 = s + s[0] # update print(s1) # printOut 6 min read Why are Python Strings Immutable? Strings in Python are "immutable" which means they can not be changed after they are created. Some other immutable data types are integers, float, boolean, etc. The immutability of Python string is very useful as it helps in hashing, performance optimization, safety, ease of use, etc. The article wi 5 min read Python - Modify Strings Python provides an wide range of built-in methods that make string manipulation simple and efficient. In this article, we'll explore several techniques for modifying strings in Python.Start with doing a simple string modification by changing the its case:Changing CaseOne of the simplest ways to modi 3 min read Python String ManipulationsPython string lengthThe string len() function returns the length of the string. In this article, we will see how to find the length of a string using the string len() method.Example:Pythons1 = "abcd" print(len(s1)) s2 = "" print(len(s2)) s3 = "a" print(len(s3))Output4 0 1 String len() Syntaxlen(string) ParameterString: 4 min read String Slicing in PythonString slicing in Python is a way to get specific parts of a string by using start, end and step values. Itâs especially useful for text manipulation and data parsing.Letâs take a quick example of string slicing:Pythons = "Hello, Python!" print(s[0:5])OutputHello Explanation: In this example, we use 4 min read How to reverse a String in PythonReversing a string is a common task in Python, which can be done by several methods. In this article, we discuss different approaches to reversing a string. One of the simplest and most efficient ways is by using slicing. Letâs see how it works:Using string slicingThis slicing method is one of the s 4 min read Find Length of String in Python In this article, we will learn how to find length of a string. Using the built-in function len() is the most efficient method. It returns the number of items in a container. Pythona = "geeks" print(len(a)) Output5 Using for loop and 'in' operatorA string can be iterated over, directly in a for loop. 2 min read How to convert string to integer in Python?In Python, a string can be converted into an integer using the following methods : Method 1: Using built-in int() function: If your string contains a decimal integer and you wish to convert it into an int, in that case, pass your string to int() function and it will convert your string into an equiv 3 min read Iterate over characters of a string in Python In this article, we will learn how to iterate over the characters of a string in Python. There are several methods to do this, but we will focus on the most efficient one. The simplest way is to use a loop. Letâs explore this approach.Using for loopThe simplest way to iterate over the characters in 2 min read Python String Concatenation and ComparisonString Comparison in PythonPython supports several operators for string comparison, including ==, !=, <, <=, >, and >=. These operators allow for both equality and lexicographical (alphabetical order) comparisons, which is useful when sorting or arranging strings.Letâs start with a simple example to illustrate the 3 min read Python String ConcatenationString concatenation in Python allows us to combine two or more strings into one. In this article, we will explore various methods for achieving this. The most simple way to concatenate strings in Python is by using the + operator.Using + OperatorUsing + operator allows us to concatenation or join s 3 min read Python - Horizontal Concatenation of Multiline StringsHorizontal concatenation of multiline strings involves merging corresponding lines from multiple strings side by side using methods like splitlines() and zip(). Tools like itertools.zip_longest() help handle unequal lengths by filling missing values, and list comprehensions format the result.Using z 3 min read String Repetition and spacing in List - PythonWe are given a list of strings and our task is to modify it by repeating or adding spaces between elements based on specific conditions. For example, given the list `a = ['hello', 'world', 'python']`, if we repeat each string twice, the output will be `['hellohello', 'worldworld', 'pythonpython']. U 2 min read Python String FormattingPython String Formatting - How to format String?String formatting allows you to create dynamic strings by combining variables and values. In this article, we will discuss about 5 ways to format a string.You will learn different methods of string formatting with examples for better understanding. Let's look at them now!How to Format Strings in Pyt 9 min read What does %s mean in a Python format string?In Python, the %s format specifier is used to represent a placeholder for a string in a string formatting operation. It allows us to insert values dynamically into a string, making our code more flexible and readable. This placeholder is part of Python's older string formatting method, using the % o 3 min read Python String InterpolationString Interpolation is the process of substituting values of variables into placeholders in a string. Let's consider an example to understand it better, suppose you want to change the value of the string every time you print the string like you want to print "hello <name> welcome to geeks for 4 min read Python Modulo String FormattingIn Python, a string of required formatting can be achieved by different methods. Some of them are; 1) Using % 2) Using {} 3) Using Template Strings In this article the formatting using % is discussed. The formatting using % is similar to that of 'printf' in C programming language. %d - integer %f - 2 min read How to use String Formatters in PythonIn Python, we use string formatting to control how text is displayed. It allows us to insert values into strings and organize the output in a clear and readable way. In this article, weâll explore different methods of formatting strings in Python to make our code more structured and user-friendly.Us 3 min read Python String format() Methodformat() method in Python is a tool used to create formatted strings. By embedding variables or values into placeholders within a template string, we can construct dynamic, well-organized output. It replaces the outdated % formatting method, making string interpolation more readable and efficient. E 8 min read f-strings in PythonPython offers a powerful feature called f-strings (formatted string literals) to simplify string formatting and interpolation. f-strings is introduced in Python 3.6 it provides a concise and intuitive way to embed expressions and variables directly into strings. The idea behind f-strings is to make 5 min read Python String Methods Python string methods is a collection of in-built Python functions that operates on strings.Note: Every string method in Python does not change the original string instead returns a new string with the changed attributes. Python string is a sequence of Unicode characters that is enclosed in quotatio 5 min read Python String Exercise Basic String ProgramsCheck whether the string is Symmetrical or PalindromeFind length of StringReverse words in a given StringRemove iâth character from stringAvoid Spaces in string lengthPrint even length words in a stringUppercase Half StringCapitalize the first and last character of each word in 4 min read Like