I don't believe that there are rules.
Hope I helped,
Ms. Weasley
<span>An attribute in a relation of a database that serves as the primary key of another relation in the same database is called a
</span>
Code:
def myAppend( str, ch ):
# Return a new string that is like str but with
# character ch added at the end
return str + ch
def myCount( str, ch ):
# Return the number of times character ch appears
# in str.
# initiaalizing count with 0
count = 0
# iterating over every characters present in str
for character in str:
# incrementing count by 1 if character == ch
if character == ch:
count += 1
# returning count
return count
def myExtend( str1, str2 ):
# Return a new string that contains the elements of
# str1 followed by the elements of str2, in the same
# order they appear in str2.
# concatenating both strings and returning its result
return str1 + str2
def myMin( str ):
# Return the character in str with the lowest ASCII code.
# If str is empty, print "Empty string: no min value"
# and return None.
if str == "":
print("Empty string: no min value")
return None
# storing first character from str in char
char = str[0]
# iterating over every characters present in str
for character in str:
# if current character is lower than char then
# assigning char with current character
if character < char:
char = character
# returning char
return char
def myInsert( str, i, ch ):
# Return a new string like str except that ch has been
# inserted at the ith position. I.e., the string is now
# one character longer than before.
# Print "Invalid index" if
# i is greater than the length of str and return None.
if i > len(str):
print("Invalid index")
return None
# str[:i] gives substring starting from 0 and upto ith position
# str[i:] gives substring starting from i and till last position
# returning the concatenated result of all three
return str[:i]+ch+str[i:]
def myPop( str, i ):
# Return two results:
# 1. a new string that is like str but with the ith
# element removed;
# 2. the value that was removed.
# Print "Invalid index" if i is greater than or
# equal to len(str), and return str unchanged and None
if i >= len(str):
print("Invalid index")
return str, None
# finding new string without ith character
new_str = str[:i] + str[i+1:]
# returning new_str and popped character
return new_str, str[i]
def myFind( str, ch ):
# Return the index of the first (leftmost) occurrence of
# ch in str, if any. Return -1 if ch does not occur in str.
# finding length of the string
length = len(str)
# iterating over every characters present in str
for i in range(length):
# returning position i at which character was found
if str[i]==ch:
return i
# returning -1 otherwise
return -1
def myRFind( str, ch ):
# Return the index of the last (rightmost) occurrence of
# ch in str, if any. Return -1 if ch does not occur in str.
# finding length of the string
length = len(str)
# iterating over every characters present in str from right side
for i in range(length-1, 0, -1):
# returning position i at which character was found
if str[i]==ch:
return i
# returning -1 otherwise
return -1
def myRemove( str, ch ):
# Return a new string with the first occurrence of ch
# removed. If there is none, return str.
# returning str if ch is not present in str
if ch not in str:
return str
# finding position of first occurence of ch in str
pos = 0
for char in str:
# stopping loop if both character matches
if char == ch:
break
# incrementing pos by 1
pos += 1
# returning strig excluding first occurence of ch
return str[:pos] + str[pos+1:]
def myRemoveAll( str, ch ):
# Return a new string with all occurrences of ch.
# removed. If there are none, return str.
# creating an empty string
string = ""
# iterating over each and every character of str
for char in str:
# if char is not matching with ch then adding it to string
if char!=ch:
string += char
# returning string
return string
def myReverse( str ):
# Return a new string like str but with the characters
# in the reverse order.
return str[::-1]
Genes
A gene is the section of DNA required to produce one protein.