Удалить "#" из строки

В общем у меня есть код, и я хочу убрать "#".Но когда я запускаю код он выводит только первый символ строки.

def remove_url_anchour(url):
    for i in url:
        return ''.join(list(i.split('#')))      
    
print(remove_url_anchour("www.codewars.com#about")) #выводит просто w

Ответы (1 шт):

Автор решения: n1tr0xs
  1. Смысла от конструкции list(i.split('#')) абсолютно нет, т.к. .split возвращает список.
  2. Если я правильно понял, что вы хотите сделать, то такой код должен подойти (убирает все, что после символа "#", включая его):
def remove_url_anchour(url):
    '''Убирает все, что после символа "#", включая его.'''
    return url.split('#')[0]
    
url = 'www.codewars.com#about'
r_url = remove_url_anchour(url)
print(r_url) # 'www.codewars.com'
  1. Или такой код (убирает символ "#"):
def remove_url_anchour(url):
    '''Убирает символ "#".'''
    return url.replace('#', '')

url = 'www.codewars.com#about'
r_url = remove_url_anchour(url)
print(r_url) # 'www.codewars.comabout'
→ Ссылка