DEV Community

Cover image for Python Basics 7: String part 2- String Functions and ASCII Code
Irfan Faisal
Irfan Faisal

Posted on

1

Python Basics 7: String part 2- String Functions and ASCII Code

There are a number of functions in python string library. String functions don't change the string itself, they return a modified string. These functions saves us a lot of time.

Syntax: string_name.function_name()

  • lower(): returns a copy string with all lower case letter.
line='Hello World'
temp= line.lower()
print(temp)
>> hello world
Enter fullscreen mode Exit fullscreen mode
  • upper(): returns a copy string with all upper case letter.
text = 'Hello World'
temp = text.upper()
print(temp)

Output:
HELLO WORLD

Enter fullscreen mode Exit fullscreen mode
  • Capitalize(): capitalize the first letter of the string
s="python is fun"
c=s.capitalize()
print(c)
>>Python is fun
Enter fullscreen mode Exit fullscreen mode
  • title(): capitalize each word of the title(string)
s="hello world"
c=s.title()
print(c)
>>Hello World
Enter fullscreen mode Exit fullscreen mode
  • strip(): returns a copy string with all whitespace removed before and after letters.
text = '   Hello    World
   '
temp = text.strip()
print(text)
print(temp)

Output:
   Hello    World  
Hello   World
Enter fullscreen mode Exit fullscreen mode
  • lstrip(): Returns a copy string with all whitespace remove before(left side) letters.
text = '    Hello   World
    '
temp = text.lstrip()
print(text)
print(temp)

Output:
    Hello     World 
Hello   World   

Enter fullscreen mode Exit fullscreen mode
  • rstrip(): Returns a copy string with all whitespace remove after(right side) letters. Ex:
 text = '     Hello     World
    '
temp = text.lstrip()
print(text)
print(temp)

Output:
    Hello     World 
    Hello     World

Enter fullscreen mode Exit fullscreen mode
  • count(substring): returns total occurrence of that substring, Ex:
text = 'Banana'
temp = text.count('a')
print(text)
print(temp)

Output:
Banana
3
Enter fullscreen mode Exit fullscreen mode
  • startswith(substring): returns True if the string starts with given substring. Ex:
text = 'Hello'
temp = text.startswith('He')
print(text)
print(temp)

Output:
Hello
True

Enter fullscreen mode Exit fullscreen mode
  • endswith(substring): returns True if the string ends with the given substring. Ex:

text = 'Hello'
temp =text.endswith('hi')
print(text)
print(temp)

Output:
Hello
False
Enter fullscreen mode Exit fullscreen mode
  • find(substring): returns the index of first occurrence of that substring.
Ex:
text = 'Banana'
temp = text.find('a')
print(text)
print(temp)

Output:
Banana
1
Enter fullscreen mode Exit fullscreen mode
  • replace(oldstring, newstring): replace every instance of oldstring with new string. Ex:
text = 'Hello'
temp = text.replace('l','nt')
print(text)
print(temp)
Output:

Hello
Hentnto

Enter fullscreen mode Exit fullscreen mode

dir('This is a string') / dir(' '):Get to see all the string functions present in python.

You can use two methods together.
Name=name.strip().title()

ASCII Code

=> Machines do not understand text, not even decimals. Machines just understand binary.
If we write "a"(string), it won't understand. To understand, machines convert them into binary. In that case, to convert string into binary, we first need to convert strings into numbers. So then comes ASCII.

ASCII (American Standard Code for Information Interchange) is a code for representing English characters as numbers assigned from 0 to 127.

ord and chr

Ord: ord function returns the corresponding ASCII value of a character.

Ord('a')
>> 97

Ord('b')
>> 98
Enter fullscreen mode Exit fullscreen mode

Chr: chr function returns the corresponding string of a number.

Chr(97)
>>a

Enter fullscreen mode Exit fullscreen mode

ASCII Code Table
ASCII Table

Example Problem
Now, we'll try to use our knowledge of functions and ASCII code with an example problem.

Problem: In this problem, you'll ask the user for writing something in uppercase and your code will return the same text in lowercase. Here we're expecting that the user will provide a text and nothing else.

Solution 1: Using default .lower() function

def uppercase_to_lowercase():

    #Prompts the user to input text in uppercase and prints the text in lowercase.

    uppercase = input("Write something in uppercase: ")
    lowercase = uppercase.lower()
    print(lowercase)

# Call the function
uppercase_to_lowercase()


#output
#Write something in uppercase: "HELLO,WORLD!"
#hello,world!
Enter fullscreen mode Exit fullscreen mode

Solution 2:Without using default .lower() function

Now, let's try to solve this problem in a different way. This time we'll not use the default .lower() function. You may ask why we need to solve this problem without the default function whereas default function is there to make our life easier. That's true but it's also a nice practice to understand how these default function works. When you understand the core mechanics of these functions it will develop your programming skill.

So, we'll try to convert our text into lowercase using ASCII value.

test="MICROsoft"
lower=""
for i in test:
  if 65<=ord(i)<=90:
    lower+=chr(ord(i)+32)
  else:
    lower+=i
print(lower)
Enter fullscreen mode Exit fullscreen mode

This solution will work even if there's any small letters in the capitalized string.

Brainstorm: Think about why we have done additon of 32 in the code? Look at the ASCII code picture to think about

So, this is all for today. I hope now you can use the string default functions whenever you need. And you also have an idea how to solve problem even if you dont know the functions using ASCII code. Happy coding!

Hostinger image

Get n8n VPS hosting 3x cheaper than a cloud solution

Get fast, easy, secure n8n VPS hosting from $4.99/mo at Hostinger. Automate any workflow using a pre-installed n8n application and no-code customization.

Start now

Top comments (0)

Heroku

Build apps, not infrastructure.

Dealing with servers, hardware, and infrastructure can take up your valuable time. Discover the benefits of Heroku, the PaaS of choice for developers since 2007.

Visit Site

👋 Kindness is contagious

Please leave a ❤️ or a friendly comment on this post if you found it helpful!

Okay