{"id":81,"date":"2020-10-03T01:17:15","date_gmt":"2020-10-03T01:17:15","guid":{"rendered":"https:\/\/www.pythontutorial.net\/?page_id=81"},"modified":"2025-03-30T13:44:50","modified_gmt":"2025-03-30T13:44:50","slug":"python-string","status":"publish","type":"page","link":"https:\/\/www.pythontutorial.net\/python-basics\/python-string\/","title":{"rendered":"Python String"},"content":{"rendered":"\n<p><strong>Summary<\/strong>: in this tutorial, you&#8217;ll learn about Python string and its basic operations.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id='introduction-to-python-string'>Introduction to Python string <a href=\"#introduction-to-python-string\" class=\"anchor\" id=\"introduction-to-python-string\" title=\"Anchor for Introduction to Python string\">#<\/a><\/h2>\n\n\n\n<p>A string is a series of characters. In Python, anything inside quotes is a string. And you can use either single or double quotes. For example:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-1\" data-shcb-language-name=\"Python\" data-shcb-language-slug=\"python\"><span><code class=\"hljs language-python\">message = <span class=\"hljs-string\">'This is a string in Python'<\/span>\nmessage = <span class=\"hljs-string\">\"This is also a string\"<\/span><\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-1\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">Python<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">python<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p><a href=\"https:\/\/www.pythontutorial.net\/playground\/?q=bWVzc2FnZSA9ICdUaGlzIGlzIGEgc3RyaW5nIGluIFB5dGhvbicKbWVzc2FnZSA9ICJUaGlzIGlzIGFsc28gYSBzdHJpbmci\" target=\"_blank\" rel=\"noreferrer noopener\">Try it<\/a><\/p>\n\n\n\n<p>If a string contains a single quote, you should place it in double-quotes like this:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-2\" data-shcb-language-name=\"Python\" data-shcb-language-slug=\"python\"><span><code class=\"hljs language-python\">message = <span class=\"hljs-string\">\"It's a string\"<\/span><\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-2\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">Python<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">python<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p><a href=\"https:\/\/www.pythontutorial.net\/playground\/?q=bWVzc2FnZSA9ICJJdCdzIGEgc3RyaW5nIg%3D%3D\" target=\"_blank\" rel=\"noreferrer noopener\">Try it<\/a><\/p>\n\n\n\n<p>And when a string contains double quotes, you can use the single quotes:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-3\" data-shcb-language-name=\"Python\" data-shcb-language-slug=\"python\"><span><code class=\"hljs language-python\">message = <span class=\"hljs-string\">'\"Beautiful is better than ugly.\". Said Tim Peters'<\/span><\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-3\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">Python<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">python<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p><a href=\"https:\/\/www.pythontutorial.net\/playground\/?q=bWVzc2FnZSA9ICciQmVhdXRpZnVsIGlzIGJldHRlciB0aGFuIHVnbHkuIi4gU2FpZCBUaW0gUGV0ZXJzJw%3D%3D\" target=\"_blank\" rel=\"noreferrer noopener\">Try it<\/a><\/p>\n\n\n\n<p>To escape the quotes, you use the backslash (<code>\\<\/code>). For example:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-4\" data-shcb-language-name=\"Python\" data-shcb-language-slug=\"python\"><span><code class=\"hljs language-python\">message = <span class=\"hljs-string\">'It\\'s also a valid string'<\/span><\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-4\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">Python<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">python<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p><a href=\"https:\/\/www.pythontutorial.net\/playground\/?q=bWVzc2FnZSA9ICdJdFwncyBhbHNvIGEgdmFsaWQgc3RyaW5nJw%3D%3D\" target=\"_blank\" rel=\"noreferrer noopener\">Try it<\/a><\/p>\n\n\n\n<p>The Python interpreter will treat the backslash character (\\) special. If you don&#8217;t want it to do so, you can use raw strings by adding the letter <code>r<\/code> before the first quote. For example:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-5\" data-shcb-language-name=\"Python\" data-shcb-language-slug=\"python\"><span><code class=\"hljs language-python\">message = <span class=\"hljs-string\">r'C:\\python\\bin'<\/span><\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-5\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">Python<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">python<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p><a href=\"https:\/\/www.pythontutorial.net\/playground\/?q=bWVzc2FnZSA9IHInQzpccHl0aG9uXGJpbic%3D\" target=\"_blank\" rel=\"noreferrer noopener\">Try it<\/a><\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id='creating-multiline-strings'>Creating multiline strings <a href=\"#creating-multiline-strings\" class=\"anchor\" id=\"creating-multiline-strings\" title=\"Anchor for Creating multiline strings\">#<\/a><\/h3>\n\n\n\n<p>To span a string multiple lines, you use triple-quotes &#8220;&#8221;&#8221;&#8230;&#8221;&#8221;&#8221; or &#8221;&#8217;&#8230;&#8221;&#8217;. For example:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-6\" data-shcb-language-name=\"Python\" data-shcb-language-slug=\"python\"><span><code class=\"hljs language-python\">help_message = <span class=\"hljs-string\">'''\nUsage: mysql command\n    -h hostname     \n    -d database name\n    -u username\n    -p password \n'''<\/span>\n\nprint(help_message)<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-6\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">Python<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">python<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p><a href=\"https:\/\/www.pythontutorial.net\/playground\/?q=aGVscF9tZXNzYWdlID0gJycnClVzYWdlOiBteXNxbCBjb21tYW5kCiAgICAtaCBob3N0bmFtZSAgICAgCiAgICAtZCBkYXRhYmFzZSBuYW1lCiAgICAtdSB1c2VybmFtZQogICAgLXAgcGFzc3dvcmQgCicnJwoKcHJpbnQoaGVscF9tZXNzYWdlKQ%3D%3D\" target=\"_blank\" rel=\"noreferrer noopener\">Try it<\/a><\/p>\n\n\n\n<p>It&#8217;ll output the following if you execute the program:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-7\" data-shcb-language-name=\"Python\" data-shcb-language-slug=\"python\"><span><code class=\"hljs language-python\">Usage: mysql command\n    -h hostname\n    -d database name\n    -u username\n    -p password<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-7\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">Python<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">python<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<h2 class=\"wp-block-heading\" id='using-variables-in-python-strings-with-the-f-strings'>Using variables in Python strings with the f-strings <a href=\"#using-variables-in-python-strings-with-the-f-strings\" class=\"anchor\" id=\"using-variables-in-python-strings-with-the-f-strings\" title=\"Anchor for Using variables in Python strings with the f-strings\">#<\/a><\/h2>\n\n\n\n<p>Sometimes, you want to use the values of <a href=\"https:\/\/www.pythontutorial.net\/python-basics\/python-variables\/\">variables<\/a> in a string. <\/p>\n\n\n\n<p>For example, you may want to use the value of the <code>name<\/code> variable inside the <code>message<\/code> string variable:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-8\" data-shcb-language-name=\"Python\" data-shcb-language-slug=\"python\"><span><code class=\"hljs language-python\">name = <span class=\"hljs-string\">'John'<\/span>\nmessage = <span class=\"hljs-string\">'Hi'<\/span><\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-8\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">Python<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">python<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p>To do it, you place the letter <code>f<\/code> before the opening quotation mark and put the brace around the variable name:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-9\" data-shcb-language-name=\"Python\" data-shcb-language-slug=\"python\"><span><code class=\"hljs language-python\">name = <span class=\"hljs-string\">'John'<\/span>\nmessage = <span class=\"hljs-string\">f'Hi <span class=\"hljs-subst\">{name}<\/span>'<\/span>\nprint(message)<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-9\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">Python<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">python<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p><a href=\"https:\/\/www.pythontutorial.net\/playground\/?q=bmFtZSA9ICdKb2huJwptZXNzYWdlID0gZidIaSB7bmFtZX0nCnByaW50KG1lc3NhZ2Up\" target=\"_blank\" rel=\"noreferrer noopener\">Try it<\/a><\/p>\n\n\n\n<p>Python will replace the <code>{name}<\/code> by the value of the <code>name<\/code> variable. The code will show the following on the screen:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-10\" data-shcb-language-name=\"Python\" data-shcb-language-slug=\"python\"><span><code class=\"hljs language-python\">Hi John<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-10\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">Python<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">python<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p>The <code>message<\/code> is a format string, or f-string in short. Python introduced the f-string in version 3.6.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id='concatenating-python-strings'>Concatenating Python strings <a href=\"#concatenating-python-strings\" class=\"anchor\" id=\"concatenating-python-strings\" title=\"Anchor for Concatenating Python strings\">#<\/a><\/h2>\n\n\n\n<p>When you place the string literals next to each other, Python automatically <a href=\"https:\/\/www.pythontutorial.net\/python-string-methods\/python-string-concatenation\/\">concatenates<\/a> them into one string. For example:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-11\" data-shcb-language-name=\"Python\" data-shcb-language-slug=\"python\"><span><code class=\"hljs language-python\">greeting = <span class=\"hljs-string\">'Good '<\/span> <span class=\"hljs-string\">'Morning!'<\/span>\nprint(greeting)<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-11\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">Python<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">python<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p><a href=\"https:\/\/www.pythontutorial.net\/playground\/?q=Z3JlZXRpbmcgPSAnR29vZCAnICdNb3JuaW5nIScKcHJpbnQoZ3JlZXRpbmcp\" target=\"_blank\" rel=\"noreferrer noopener\">Try it<\/a><\/p>\n\n\n\n<p>Output:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-12\" data-shcb-language-name=\"Python\" data-shcb-language-slug=\"python\"><span><code class=\"hljs language-python\">Good Morning!<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-12\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">Python<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">python<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p>To <a href=\"https:\/\/www.pythontutorial.net\/python-basics\/python-string-concatenation\/\">concatenate two string variables<\/a>, you use the operator <code>+<\/code>:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-13\" data-shcb-language-name=\"Python\" data-shcb-language-slug=\"python\"><span><code class=\"hljs language-python\">greeting = <span class=\"hljs-string\">'Good '<\/span>\ntime = <span class=\"hljs-string\">'Afternoon'<\/span>\n\ngreeting = greeting + time + <span class=\"hljs-string\">'!'<\/span>\nprint(greeting)<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-13\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">Python<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">python<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p><a href=\"https:\/\/www.pythontutorial.net\/playground\/?q=Z3JlZXRpbmcgPSAnR29vZCAnCnRpbWUgPSAnQWZ0ZXJub29uJwoKZ3JlZXRpbmcgPSBncmVldGluZyArIHRpbWUgKyAnIScKcHJpbnQoZ3JlZXRpbmcp\" target=\"_blank\" rel=\"noreferrer noopener\">Try it<\/a><\/p>\n\n\n\n<p>Output:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-14\" data-shcb-language-name=\"Python\" data-shcb-language-slug=\"python\"><span><code class=\"hljs language-python\">Good Afternoon!<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-14\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">Python<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">python<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<h2 class=\"wp-block-heading\" id='accessing-string-elements'>Accessing string elements <a href=\"#accessing-string-elements\" class=\"anchor\" id=\"accessing-string-elements\" title=\"Anchor for Accessing string elements\">#<\/a><\/h2>\n\n\n\n<p>Since a string is a <a href=\"https:\/\/www.pythontutorial.net\/advanced-python\/python-sequences\/\">sequence<\/a> of characters, you can access its elements using an index. The first character in the string has an index of zero.<\/p>\n\n\n\n<p>The following example shows how to access elements using an index:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-15\" data-shcb-language-name=\"Python\" data-shcb-language-slug=\"python\"><span><code class=\"hljs language-python\">str = <span class=\"hljs-string\">\"Python String\"<\/span>\nprint(str&#91;<span class=\"hljs-number\">0<\/span>]) <span class=\"hljs-comment\"># P<\/span>\nprint(str&#91;<span class=\"hljs-number\">1<\/span>]) <span class=\"hljs-comment\"># y<\/span><\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-15\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">Python<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">python<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p><a href=\"https:\/\/www.pythontutorial.net\/playground\/?q=c3RyID0gIlB5dGhvbiBTdHJpbmciCnByaW50KHN0clswXSkgIyBQCnByaW50KHN0clsxXSkgIyB5\" target=\"_blank\" rel=\"noreferrer noopener\">Try it<\/a><\/p>\n\n\n\n<p>How it works:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>First, create a variable that holds a string <code>\"Python String\"<\/code>.<\/li>\n\n\n\n<li>Then, access the first and second characters of the string by using the square brackets <code>[]<\/code> and indexes.<\/li>\n<\/ul>\n\n\n\n<p>If you use a negative index, Python returns the character starting from the end of the string. For example:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-16\" data-shcb-language-name=\"Python\" data-shcb-language-slug=\"python\"><span><code class=\"hljs language-python\">str = <span class=\"hljs-string\">\"Python String\"<\/span>\nprint(str&#91;<span class=\"hljs-number\">-1<\/span>])  <span class=\"hljs-comment\"># g<\/span>\nprint(str&#91;<span class=\"hljs-number\">-2<\/span>])  <span class=\"hljs-comment\"># n<\/span><\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-16\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">Python<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">python<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p><a href=\"https:\/\/www.pythontutorial.net\/playground\/?q=c3RyID0gIlB5dGhvbiBTdHJpbmciCnByaW50KHN0clstMV0pICAjIGcKcHJpbnQoc3RyWy0yXSkgICMgbg%3D%3D\" target=\"_blank\" rel=\"noreferrer noopener\">Try it<\/a><\/p>\n\n\n\n<p>The following illustrates the indexes of the string <code>\"Python String\"<\/code>:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-17\" data-shcb-language-name=\"Python\" data-shcb-language-slug=\"python\"><span><code class=\"hljs language-python\">+---+---+---+---+---+---+---+---+---+---+---+---+---+\n| P | y | t | h | o | n |   | S | t | r | i | n | g | \n+---+---+---+---+---+---+---+---+---+---+---+---+---+\n  <span class=\"hljs-number\">0<\/span>   <span class=\"hljs-number\">1<\/span>   <span class=\"hljs-number\">2<\/span>   <span class=\"hljs-number\">3<\/span>   <span class=\"hljs-number\">4<\/span>   <span class=\"hljs-number\">5<\/span>   <span class=\"hljs-number\">6<\/span>   <span class=\"hljs-number\">7<\/span>   <span class=\"hljs-number\">8<\/span>   <span class=\"hljs-number\">9<\/span>   <span class=\"hljs-number\">10<\/span>  <span class=\"hljs-number\">11<\/span>  <span class=\"hljs-number\">12<\/span>\n<span class=\"hljs-number\">-13<\/span>  <span class=\"hljs-number\">-12<\/span>  <span class=\"hljs-number\">-11<\/span>  <span class=\"hljs-number\">-10<\/span> <span class=\"hljs-number\">-9<\/span>  <span class=\"hljs-number\">-8<\/span>  <span class=\"hljs-number\">-7<\/span>  <span class=\"hljs-number\">-6<\/span>  <span class=\"hljs-number\">-5<\/span>  <span class=\"hljs-number\">-4<\/span>  <span class=\"hljs-number\">-3<\/span>  <span class=\"hljs-number\">-2<\/span>  <span class=\"hljs-number\">-1<\/span> <\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-17\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">Python<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">python<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<h2 class=\"wp-block-heading\" id='getting-the-length-of-a-string'>Getting the length of a string <a href=\"#getting-the-length-of-a-string\" class=\"anchor\" id=\"getting-the-length-of-a-string\" title=\"Anchor for Getting the length of a string\">#<\/a><\/h2>\n\n\n\n<p>To get the length of a string, you use the <code>len()<\/code> function. For example:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-18\" data-shcb-language-name=\"Python\" data-shcb-language-slug=\"python\"><span><code class=\"hljs language-python\">str = <span class=\"hljs-string\">\"Python String\"<\/span>\nstr_len = len(str)\nprint(str_len)<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-18\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">Python<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">python<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p><a href=\"https:\/\/www.pythontutorial.net\/playground\/?q=c3RyID0gIlB5dGhvbiBTdHJpbmciCnN0cl9sZW4gPSBsZW4oc3RyKQpwcmludChzdHJfbGVuKQ%3D%3D\" target=\"_blank\" rel=\"noreferrer noopener\">Try it<\/a><\/p>\n\n\n\n<p>Output:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-19\" data-shcb-language-name=\"Python\" data-shcb-language-slug=\"python\"><span><code class=\"hljs language-python\"><span class=\"hljs-number\">13<\/span><\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-19\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">Python<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">python<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<h2 class=\"wp-block-heading\" id='slicing-strings'>Slicing strings <a href=\"#slicing-strings\" class=\"anchor\" id=\"slicing-strings\" title=\"Anchor for Slicing strings\">#<\/a><\/h2>\n\n\n\n<p><a href=\"https:\/\/www.pythontutorial.net\/advanced-python\/python-slicing\/\">Slicing<\/a> allows you to get a substring from a string. For example:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-20\" data-shcb-language-name=\"Python\" data-shcb-language-slug=\"python\"><span><code class=\"hljs language-python\">str = <span class=\"hljs-string\">\"Python String\"<\/span>\nprint(str&#91;<span class=\"hljs-number\">0<\/span>:<span class=\"hljs-number\">2<\/span>])<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-20\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">Python<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">python<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p><a href=\"https:\/\/www.pythontutorial.net\/playground\/?q=c3RyID0gIlB5dGhvbiBTdHJpbmciCnByaW50KHN0clswOjJdKQ%3D%3D\" target=\"_blank\" rel=\"noreferrer noopener\">Try it<\/a><\/p>\n\n\n\n<p>Output:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-21\" data-shcb-language-name=\"Python\" data-shcb-language-slug=\"python\"><span><code class=\"hljs language-python\">Py<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-21\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">Python<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">python<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p>The <code>str[0:2]<\/code> returns a substring that includes the character from the index 0 (included) to 2 (excluded).<\/p>\n\n\n\n<p>The syntax for slicing is as follows:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-22\" data-shcb-language-name=\"Python\" data-shcb-language-slug=\"python\"><span><code class=\"hljs language-python\">string&#91;start:end]<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-22\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">Python<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">python<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p>The substring always includes the character at the <code>start<\/code> and excludes the string at the <code>end<\/code>. <\/p>\n\n\n\n<p>The <code>start<\/code> and <code>end<\/code> are optional. If you omit the <code>start<\/code>, it defaults to zero. If you omit the <code>end<\/code>, it defaults to the string&#8217;s length. <\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id='python-strings-are-immutable'>Python strings are immutable <a href=\"#python-strings-are-immutable\" class=\"anchor\" id=\"python-strings-are-immutable\" title=\"Anchor for Python strings are immutable\">#<\/a><\/h2>\n\n\n\n<p>Python strings are <a href=\"https:\/\/www.pythontutorial.net\/advanced-python\/python-mutable-and-immutable\/\">immutable<\/a>. It means that you cannot change the string. For example, you&#8217;ll get an error if you update one or more characters in a string:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-23\" data-shcb-language-name=\"Python\" data-shcb-language-slug=\"python\"><span><code class=\"hljs language-python\">str = <span class=\"hljs-string\">\"Python String\"<\/span>\nstr&#91;<span class=\"hljs-number\">0<\/span>] = <span class=\"hljs-string\">'J'<\/span><\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-23\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">Python<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">python<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p><a href=\"https:\/\/www.pythontutorial.net\/playground\/?q=c3RyID0gIlB5dGhvbiBTdHJpbmciCnN0clswXSA9ICdKJw%3D%3D\" target=\"_blank\" rel=\"noreferrer noopener\">Try it<\/a><\/p>\n\n\n\n<p>Error:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-24\" data-shcb-language-name=\"Python\" data-shcb-language-slug=\"python\"><span><code class=\"hljs language-python\">Traceback (most recent call last):\n  File <span class=\"hljs-string\">\"app.py\"<\/span>, line <span class=\"hljs-number\">2<\/span>, <span class=\"hljs-keyword\">in<\/span> &lt;module&gt;\n    str&#91;<span class=\"hljs-number\">0<\/span>] = <span class=\"hljs-string\">'J'<\/span>\nTypeError: <span class=\"hljs-string\">'str'<\/span> object does <span class=\"hljs-keyword\">not<\/span> support item assignment&lt;\/module&gt;<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-24\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">Python<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">python<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p>When want to modify a string, you need to create a new one from the existing string. For example:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-25\" data-shcb-language-name=\"Python\" data-shcb-language-slug=\"python\"><span><code class=\"hljs language-python\">str = <span class=\"hljs-string\">\"Python String\"<\/span>\nnew_str = <span class=\"hljs-string\">'J'<\/span> + str&#91;<span class=\"hljs-number\">1<\/span>:]\nprint(new_str)<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-25\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">Python<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">python<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p><a href=\"https:\/\/www.pythontutorial.net\/playground\/?q=c3RyID0gIlB5dGhvbiBTdHJpbmciCm5ld19zdHIgPSAnSicgKyBzdHJbMTpdCnByaW50KG5ld19zdHIp\" target=\"_blank\" rel=\"noreferrer noopener\">Try it<\/a><\/p>\n\n\n\n<p>Output:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-26\" data-shcb-language-name=\"Python\" data-shcb-language-slug=\"python\"><span><code class=\"hljs language-python\">Jython String<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-26\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">Python<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">python<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<h2 class=\"wp-block-heading\" id='f-strings'>F-strings <a href=\"#f-strings\" class=\"anchor\" id=\"f-strings\" title=\"Anchor for F-strings\">#<\/a><\/h2>\n\n\n\n<p>F-strings allow you to embed variables and expressions in a string literal. For example:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-27\" data-shcb-language-name=\"PHP\" data-shcb-language-slug=\"php\"><span><code class=\"hljs language-php\">name = <span class=\"hljs-string\">'Anthony'<\/span>\nmessage = f<span class=\"hljs-string\">'Hello, {name}!'<\/span>\n<span class=\"hljs-keyword\">print<\/span>(message)<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-27\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">PHP<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">php<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p><a href=\"https:\/\/www.pythontutorial.net\/playground\/?q=bmFtZSA9ICdBbnRob255JwptZXNzYWdlID0gZidIZWxsbywge25hbWV9IScKcHJpbnQobWVzc2FnZSk%3D\" target=\"_blank\" rel=\"noreferrer noopener\">Try it<\/a><\/p>\n\n\n\n<p>Output:<\/p>\n\n\n<pre class=\"wp-block-code\"><span><code class=\"hljs\">Hello, Anthony!<\/code><\/span><\/pre>\n\n\n<p>In this example:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>First, use the letter f to indicate the string literal is a f-string <code>f''<\/code> .<\/li>\n\n\n\n<li>Second, place a variable within the curly braces <code>{name}<\/code><\/li>\n<\/ul>\n\n\n\n<p>When evaluating an f-string, Python replaces the variable placeholder <code>{name}<\/code> with its value (<code>Anthony<\/code>). This is also known as string interpolation.<\/p>\n\n\n\n<p>You&#8217;ll learn more detail about f-strings in the <a href=\"https:\/\/www.pythontutorial.net\/python-basics\/python-f-strings\/\">f-strings tutorial<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id='summary'>Summary <a href=\"#summary\" class=\"anchor\" id=\"summary\" title=\"Anchor for Summary\">#<\/a><\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>In Python, a string is a series of characters. Also, Python strings are immutable.<\/li>\n\n\n\n<li>Use quotes, either single quotes or double quotes to create string literals.<\/li>\n\n\n\n<li>Use the backslash character <code>\\<\/code> to escape quotes in strings<\/li>\n\n\n\n<li>Use raw strings <code>r'...'<\/code> to escape the backslash character.<\/li>\n\n\n\n<li>Use f-strings to insert substitute variables in literal strings.<\/li>\n\n\n\n<li>Place literal strings next to each other to concatenate them. And use the + operator to concatenate string variables.<\/li>\n\n\n\n<li>Use the <code>len()<\/code> function to get the size of a string.<\/li>\n\n\n\n<li>Use the <code>str[n]<\/code> to access the character at the position n of the string <code>str<\/code>.<\/li>\n\n\n\n<li>Use slicing to extract a substring from a string.<\/li>\n\n\n\n<li>Use f-string to embed variable within a string literal.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\" id='quiz'>Quiz <a href=\"#quiz\" class=\"anchor\" id=\"quiz\" title=\"Anchor for Quiz\">#<\/a><\/h2>\n\n\n\n<iframe loading=\"lazy\"\n  name=\"quiz\"\n  src=\"\/quiz\/?quiz=string\"\n  height=\"700\"\n  width=\"600\"\n  class=\"iframe\"\n><\/iframe>\n<div class=\"helpful-block-content\" data-title=\"\">\n\t<header>\n\t\t<div class=\"wth-question\">Was this tutorial helpful ?<\/div>\n\t\t<div class=\"wth-thumbs\">\n\t\t\t<button\n\t\t\t\tdata-post=\"81\"\n\t\t\t\tdata-post-url=\"https:\/\/www.pythontutorial.net\/python-basics\/python-string\/\"\n\t\t\t\tdata-post-title=\"Python String\"\n\t\t\t\tdata-response=\"1\"\n\t\t\t\tclass=\"wth-btn-rounded wth-yes-btn\"\n\t\t\t>\n\t\t\t\t<svg\n\t\t\t\t\txmlns=\"http:\/\/www.w3.org\/2000\/svg\"\n\t\t\t\t\tviewBox=\"0 0 24 24\"\n\t\t\t\t\tfill=\"none\"\n\t\t\t\t\tstroke=\"currentColor\"\n\t\t\t\t\tstroke-width=\"2\"\n\t\t\t\t\tstroke-linecap=\"round\"\n\t\t\t\t\tstroke-linejoin=\"round\"\n\t\t\t\t\tclass=\"feather feather-thumbs-up block w-full h-full\"\n\t\t\t\t>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M14 9V5a3 3 0 0 0-3-3l-4 9v11h11.28a2 2 0 0 0 2-1.7l1.38-9a2 2 0 0 0-2-2.3zM7 22H4a2 2 0 0 1-2-2v-7a2 2 0 0 1 2-2h3\"\n\t\t\t\t\t><\/path>\n\t\t\t\t<\/svg>\n\t\t\t\t<span class=\"sr-only\"> Yes <\/span>\n\t\t\t<\/button>\n\n\t\t\t<button\n\t\t\t\tdata-response=\"0\"\n\t\t\t\tdata-post=\"81\"\n\t\t\t\tdata-post-url=\"https:\/\/www.pythontutorial.net\/python-basics\/python-string\/\"\n\t\t\t\tdata-post-title=\"Python String\"\n\t\t\t\tclass=\"wth-btn-rounded wth-no-btn\"\n\t\t\t>\n\t\t\t\t<svg\n\t\t\t\t\txmlns=\"http:\/\/www.w3.org\/2000\/svg\"\n\t\t\t\t\tviewBox=\"0 0 24 24\"\n\t\t\t\t\tfill=\"none\"\n\t\t\t\t\tstroke=\"currentColor\"\n\t\t\t\t\tstroke-width=\"2\"\n\t\t\t\t\tstroke-linecap=\"round\"\n\t\t\t\t\tstroke-linejoin=\"round\"\n\t\t\t\t>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M10 15v4a3 3 0 0 0 3 3l4-9V2H5.72a2 2 0 0 0-2 1.7l-1.38 9a2 2 0 0 0 2 2.3zm7-13h2.67A2.31 2.31 0 0 1 22 4v7a2.31 2.31 0 0 1-2.33 2H17\"\n\t\t\t\t\t><\/path>\n\t\t\t\t<\/svg>\n\t\t\t\t<span class=\"sr-only\"> No <\/span>\n\t\t\t<\/button>\n\t\t<\/div>\n\t<\/header>\n\n\t<div class=\"wth-form hidden\">\n\t\t<div class=\"wth-form-wrapper\">\n\t\t\t<div class=\"wth-title\"><\/div>\n\t\t\t<textarea class=\"wth-message\"><\/textarea>\n\t\t\t<input type=\"button\" name=\"wth-submit\" class=\"wth-btn wth-btn-submit\" id=\"wth-submit\" \/>\n\t\t\t<input type=\"button\" class=\"wth-btn wth-btn-cancel\" value=\"Cancel\" \/>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Summary: in this tutorial, you&#8217;ll learn about Python string and its basic operations. Introduction to Python string # A string is a series of characters. In Python, anything inside quotes is a string. And you can use either single or double quotes. For example: Try it If a string contains a single quote, you should [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":37,"menu_order":2,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-81","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/www.pythontutorial.net\/wp-json\/wp\/v2\/pages\/81","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.pythontutorial.net\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.pythontutorial.net\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.pythontutorial.net\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.pythontutorial.net\/wp-json\/wp\/v2\/comments?post=81"}],"version-history":[{"count":1,"href":"https:\/\/www.pythontutorial.net\/wp-json\/wp\/v2\/pages\/81\/revisions"}],"predecessor-version":[{"id":7245,"href":"https:\/\/www.pythontutorial.net\/wp-json\/wp\/v2\/pages\/81\/revisions\/7245"}],"up":[{"embeddable":true,"href":"https:\/\/www.pythontutorial.net\/wp-json\/wp\/v2\/pages\/37"}],"wp:attachment":[{"href":"https:\/\/www.pythontutorial.net\/wp-json\/wp\/v2\/media?parent=81"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}