Showing posts with label String. Show all posts
Showing posts with label String. Show all posts

Generating random strings until a given string is generated

import string

import random

import time

possibleCharacters = (string.ascii_lowercase + string.digits +

string.ascii_uppercase + ' ., !?;:')

t = "hi"

attemptThis = ''.join(random.choice(possibleCharacters)

for i in range(len(t)))

attemptNext = ''

completed = False

iteration = 0

while completed == False:

print(attemptThis)

attemptNext = ''

completed = True

for i in range(len(t)):

if attemptThis[i] != t[i]:

completed = False

attemptNext += random.choice(possibleCharacters)

else:

attemptNext += t[i]

iteration += 1

attemptThis = attemptNext

time.sleep(0.1)

print("Target matched after " +

str(iteration) + " iterations")


Check if a given string is binary string or not

def check(string) :

p = set(string)

s = {'0', '1'}

if s == p or p == {'0'} or p == {'1'}:

print("Yes")

else :

print("No")


if __name__ == "__main__" :

string = "101010000111"

check(string)


Words Frequency in String Shorthands

 # Using Counter() + split()

from collections import Counter

test_str = 'Python for engineers . Solution for python programs'

print("The original string is : " + str(test_str))

res = Counter(test_str.split())

print("The words frequency : " + str(dict(res)))


Program to find mirror characters in a string

def mirrorChars(input,k):

original = 'abcdefghijklmnopqrstuvwxyz'

reverse = 'zyxwvutsrqponmlkjihgfedcba'

dictChars = dict(zip(original,reverse))

prefix = input[0:k-1]

suffix = input[k-1:]

mirror = ''

for i in range(0,len(suffix)):

mirror = mirror + dictChars[suffix[i]]

print (prefix+mirror)

if __name__ == "__main__":

input = 'paradox'

k = 3

mirrorChars(input,k)


Program to convert DateTime to string

import time

def convert(datetime_str):

datetime_str = time.mktime(datetime_str)

format = "%b %d %Y %r" 

dateTime = time.strftime(format, time.gmtime(datetime_str))

return dateTime

date_time = (2018, 12, 4, 10, 7, 00, 1, 48, 0)

print(convert(date_time))


Permutation of a given string using inbuilt function

from itertools import permutations

def allPermutations(str):

permList = permutations(str)

for perm in list(permList):

print (''.join(perm))

if __name__ == "__main__":

str = 'ABC'

allPermutations(str)


Reversal of a string

startmsg = "hello"
endmsg = ""
for i in range(0,len(startmsg)):
  endmsg = startmsg[i] + endmsg
print (endmsg)

String replacing with another string with occurrence count

s='brown box red pencil brown pen red pen red box'
print (s)
s1=s.replace('red','brown')
print (s1)

s='brown box red pencil brown pen red pen red box'
print (s)
s1=s.replace('brown','red',1)
print (s1)

s='brown box red pencil brown pen red pen red box'
print (s)
s1=s.replace('brown','red',2)
print (s1)

s='brown box red pencil brown pen red pen red box'
print (s)
s1=s.replace('brown','red',3)
print (s1)

Searching the pattern in a String using find and index

try:
    s="brown box red pencil brown pen red pen red box"
    print s.find("red")
    print s.find("red",13,len(s))
    print s.find("red",34,len(s))
    print s.find("crow")
    print s.index("red")
    print s.index("red",13,len(s))
    print s.index("red",34,len(s))
    print s.index("crow")
except ValueError:
   print "crow not a pattern in string"
   

String operations to remove white spaces

s=" t  ioi ii "
t1=s.rstrip() # removes trailing white space
t2=s.lstrip() # removes leading white space
t3=s.strip()  # removes leading and trailing white space

print s

print t1

print t2

print t3

Different indexing in string

fruit='apples'
l=len(fruit)
print 'Length of string:',l
print  fruit[0:4]    #[m:n]  m is starting index and n will upto n-1 index
print  fruit[-4]      # Index starting from last element as -1, second last element as -2 so on
print  fruit[::-1]   # Reverse of a string
print fruit[:2]
print fruit[2:]

try:
      print  fruit[6]
except:
      print 'index error'

for i in fruit:
      print '\nChar in the string: ',i

for j in range(l):
      print  '\nIndex and Char in the string: ',j,fruit[j]


Compare the two string based on ascii values

str1=raw_input('Enter the string 1:  ')
str2=raw_input('Enter the string 2:  ')
if str1==str2:
      print 'String are equal'  # It is working based on ascii value  refer http://www.ascii-code.com/
elif str1<str2:
      print 'Str2 is greater than str1'
elif str1>str2:
        print 'Str1 is greater than str2'
elif str1<=str2:
        print 'Str1 is greater than or equal to str2'
elif str1>=str2:
        print 'Str1 is greater than or equal to str2'
elif str1!=str2:
        print 'Str1 is not equal to str2'

Accessing Values in Strings and Updating

var = 'Python Programming'
print "var[0]: ", var[0]
print "var[3:9]: ", var[3:9]
print "var[1:5]: ", var[1:5]
print "var[:]: ", var[:]           # List all elements in string
print "var[:2]: ", var[:2]       # List first 2 elements in string
print "var[2:]: ", var[2:]      # Except first 2 elements in string
print "var[::-1]: ", var[::-1]  # String Reverse
j=len(var)
print 'Length of string is:',j
i=0
while i<j:
      print 'Character in the string is:', var[i]
      i=i+1

x = 'Hello World!'

print "Updated String :- ", 'New ' + x[6:12]

Searching the character count from string

word = raw_input('Enter the String:')
char = raw_input('Enter the Character to search:')

count = 0
for letter in word:
 if letter == char:
  count = count + 1
print 'Number of times repeated:', count

Basic String Manipulations

word = 'banana talks'

for i in word:  #Here the i is the letters in the string word
      print 'Character from string:',i

for h in range(len(word)):   #Here the h is index created by range function with value created by length
      print 'Index:',h,'charater:' ,word[h]

n1 = word.upper()

print 'String in the upper case:', n1

n2 = word.lower()

print 'String in the lower case:', n2

print 'Display a part of string :',word[1:5] # It display string from index 1 to 4

print 'Display a part of string :',word[4:8] # It display string from index 4 to 7

Count of character repetition in a string

word=str(raw_input('Enter the string:'))
n=raw_input('Enter the character to search in string:')
c=0
for i in word:
    if i==n:
      c=c+1
print 'Number of times the character repeated is',  c

To check a string is palidrome or not

k=raw_input('Enter a string:  ')

if k==k[::-1]:
    print 'String is palidrome'
else:
    print 'String is not palidrome'