Я пытаюсь написать исключение функции, которое принимает строку и 2 необязательных аргумента. Первый необязательный аргумент (bad_characters) принимает букву, а третий аргумент (case_sensitive) принимает значение Boolean. Функция должна взять строку s и удалить все экземпляры bad_characters. Если case_sensitive истинно, тогда функция должна действовать с учетом регистра. Если false, тогда это не нужно. Это то, что у меня есть до сих пор.Удаление строчных букв из строки в Python
def eliminate(s,bad_characters = [],case_sensitive = True or False):
''' Takes a string s and returns the string with all bad_characters
removed. If case_sensitive is True, then the function will only
remove uppercase letters if there are uppercase letters in
bad_characters.
String --> String'''
while True:
if case_sensitive = False:
for character in s:
if bad_characters == character:
newlist = s.replace(bad_characters,'')
return newlist
break
Мне сложно определить, как заставить функцию удалять буквы в верхнем регистре, если это необходимо. Функция также должна работать, если bad_characters - это список, кортеж или строка.
'Правда или false' ==' true'. Это ваше намерение? –
Почему 'case_sensitive' удаляет только прописные буквы? это странно. Возможно, назовите его 'uppercase_only'? –
Также попробуйте в консоли python следующее: '' A '==' a''. –