DEV Community

loading...

Interesting Cool Python Tricks for working with Strings

saikrishna52 profile image Saikrishna-52 ・3 min read

one of the popular programming languages is python among many new and old programmers. It provides a easy to read and a pseudo-code format of program. This helps in easy understanding of the overall program structure and algorithm.
There are many ways in, which a particular python logic can be written. Below are some of the cool Python program tricks, which might help you to work with strings. Use the below tricks and get your logic working easier.

Strings

Let us see the different operations that can be performed on the below string.

      word = 'Sample'
      len(word)
      Output
      6
+---+---+---+---+---+---+
 | S | a | m | p | l | e |
+---+---+---+---+---+---+
 0   1   2   3   4   5   6
 -6  -5  -4  -3  -2  -1
Enter fullscreen mode Exit fullscreen mode

1 Concatenation

Join a string with another
string

 word = 'Sample'

 word + ' ' + 'trick'

Output

 'Sample trick'
Enter fullscreen mode Exit fullscreen mode

2 Indexed Access of Strings

A string in a python can be
indexed to perform operations on the string

     Positive single 
     character
     word = 'Sample'
     word[3]

  Output
 p
  Negative single character
 word = 'Sample'
word[-2]
Output
l
String Reverse
 word = 'Sample'
 word[::-1]
 Output
'elpmaS'
Reverse string by iterating through string contents
word = 'Sample'
for char in reversed(word):    
print(char)
 Output
e
l
 p
 m
 a
 S
Enter fullscreen mode Exit fullscreen mode

3 Slicing of Strings

Slicing allows us to access a substring of characters from a word.

 Example 1
 word = 'Sample'
 word[0:3] 
 Output
Sam

  Example 2
 word = 'Sample'
word[4:5] 
Output
le

Example 3
word = 'Sample'
  word[:5] 
Output
 Sampl
Enter fullscreen mode Exit fullscreen mode

4 Remove leading and trailing characters

To remove space before and after a string the strip() method can be used has shown below

   '   Sample   '.strip()
  Output
  Sample
'sample'.strip('ple')
Output
 Sam
Enter fullscreen mode Exit fullscreen mode

5 Left fill with ASCII ‘0’

To left fill with ASCII ‘0’’, we can use zfill() method to make a length of required string width.

 "10".zfill(6)
  Output
   000010
  "-10".zfill(6)
  Output
 -00010
Enter fullscreen mode Exit fullscreen mode

6 Find Substring

The find() method can be used to extract a substring from a string

   'sample'.find('am',0,5)
    Output
   1
     'sam' in 'sample'
    Output
      True
Enter fullscreen mode Exit fullscreen mode

7 Find if the string contains Numbers

The isalpha() method can be used to find if a string contains number

  '123'.isalpha()
   Output
      False
    'abc'.isalpha()
  Output
   True
 '1abc'.isalpha()
 Output
  False
Enter fullscreen mode Exit fullscreen mode

#8 Find if the string is alphanumeric

The isalnum() method can be used to find if the string contains alphanumeric and at least one character

      ' '.isalnum()
    Output
     False

   'abc'.isalnum()
  Output
    True
Enter fullscreen mode Exit fullscreen mode

9 Find if the string is having only whitespace

The isspace() method can be used to determine if the string is only whitespace character

   ' '.isspace()
    Output
       True
 'Sample  '.isspace()
Output
False
Enter fullscreen mode Exit fullscreen mode

10 Remove Spaces on the left side of the string

The lstrip() can be used to remove whitespace characters on the left.

'   sample   '.lstrip()
Output
'spacious   '



 ss'www.example.com'.lstrip('cmowz.')
 Output
'example.com'
Enter fullscreen mode Exit fullscreen mode

Remove Spaces on the right side of the string

The rstrip() can be used to remove whitespace characters on the left.

  '   sample   '.rstrip()
  Output
 'spacious   '
'mississippi'.rstrip('ipz')
Output
'mississ'
Enter fullscreen mode Exit fullscreen mode

12 Formatted String Literals

The string literals which are prefixed with ‘f’ or ’F’ are called f-string.

word = "Sample"
 f"THis is a {word!r} 
string."
 Output
"THis is a 'Sample' string."
Enter fullscreen mode Exit fullscreen mode

13 Joining multiple strings from a list

The join() method can be used to join the strings in a list

 Test = 
 ["This","is","Sample"]
   print(" ".join(Test))
 Output
This is Sample
Enter fullscreen mode Exit fullscreen mode

14.Repeat string multiple times

Same like nos the strings can be multiplied to generate multiple string

 word = "Sample"
  print(word*3)
    Output
     SampleSampleSample
Enter fullscreen mode Exit fullscreen mode

15.Splitting a sentence to word

The split() method can be used to split a sentence to multiple words to form a list

   "This is a Sample".split()
 Output
['This', 'is', 'a', 'Sample']
Enter fullscreen mode Exit fullscreen mode

16.Find the frequent word in a sentence

The word which occurs most times in a sentence can be found using the below trick

sentence = “She was young the way an actual young person is young”.split()
most_frequent_word = max(set(sentence),key=sentence.count)
Output   'young'
Enter fullscreen mode Exit fullscreen mode

Remove duplicate words in a sentence
Duplicate words in a sentence can be removed has shown below

    sentence = "The sound 
sounds sound".split()
 list(set(sentence))
  Output
 ['sound', 'The', 'sounds']
Enter fullscreen mode Exit fullscreen mode

Remove duplicate words retain the sentence order

The below trick removes the duplicate word keeping the order of words in the sentence.
from collections import OrderedDict

sentence = "The sound sounds 
sound".split()
Enter fullscreen mode Exit fullscreen mode

list(OrderedDict.fromkeys(sentence).keys())

 Output
['The', 'sound', 'sounds']
Enter fullscreen mode Exit fullscreen mode

Reversing a sentence

The reverse() method can be used to reverse a sentence

sentence = "This is 
Sample".split()
sentence.reverse()
print(sentence)
Output
['Sample', 'is', 'This']
Enter fullscreen mode Exit fullscreen mode

Combine list using zip() method

The zip() method can be used to combine two seperate list of strings.

   Name = ['Tom', 'Marry', 'Jon']
  Age = ['35', '30', '40']
 for Name, Age in zip(Name,Age):
print(Name,Age)
Output
Tom 35
Marry 30
Jon 40
Enter fullscreen mode Exit fullscreen mode

Discussion (0)

pic
Editor guide