Python String isprintable() Method
Last Updated :
12 Aug, 2021
Python String isprintable() is a built-in method used for string handling. The isprintable() method returns “True” if all characters in the string are printable or the string is empty, Otherwise, It returns “False”. This function is used to check if the argument contains any printable characters such as:
- Digits ( 0123456789 )
- Uppercase letters ( ABCDEFGHIJKLMNOPQRSTUVWXYZ )
- Lowercase letters ( abcdefghijklmnopqrstuvwxyz )
- Punctuation characters ( !”#$%&'()*+, -./:;?@[\]^_`{ | }~ )
- Space ( )
Syntax:
string.isprintable()
Parameters:
isprintable() does not take any parameters
Returns:
- True – If all characters in the string are printable or the string is empty.
- False – If the string contains 1 or more nonprintable characters.
Errors Or Exceptions:
- The function does not take any arguments, therefore no parameters should be passed, otherwise, it returns an error.
- The only whitespace character which is printable is space or ” “, otherwise every whitespace character is non-printable and the function returns “False”.
- The empty string is considered printable and it returns “True”.
Example 1
Input : string = 'My name is Ayush'
Output : True
Input : string = 'My name is \n Ayush'
Output : False
Input : string = ''
Output : True
Python3
string = 'My name is Ayush'
print (string.isprintable())
string = 'My name is \n Ayush'
print (string.isprintable())
string = ''
print ( string.isprintable())
|
Output:
True
False
True
Example 2: Practical Application
Given a string in python, count the number of non-printable characters in the string and replace non-printable characters with a space.
Input : string = 'My name is Ayush'
Output : 0
My name is Ayush
Input : string = 'My\nname\nis\nAyush'
Output : 3
My name is Ayush
Algorithm:
- Initialize an empty new string and a variable count = 0.
- Traverse the given string character by character up to its length, check if the character is a non-printable character.
- If it is a non-printable character, increment the counter by 1, and add a space to the new string.
- Else if it is a printable character, add it to the new string as it is.
- Print the value of the counter and the new string.
Python3
string = 'GeeksforGeeks\nname\nis\nCS portal'
newstring = ''
count = 0
for a in string:
if (a.isprintable()) = = False :
count + = 1
newstring + = ' '
else :
newstring + = a
print (count)
print (newstring)
|
Output:
3
GeeksforGeeks name is CS portal
Like Article
Suggest improvement
Share your thoughts in the comments
Please Login to comment...