#python #python-3.x
#python #python-3.x
Вопрос:
Просто пытаюсь найти правильное решение для моего сценария. Допустим, у меня есть список из 2 элементов, как показано ниже:
old_str = ['https://www[dot]exabeam[dot]com','https://www[dot]google[dot]com/#q=exa beam']
Я хочу выводить как ['www.exabeam.com', 'www.google.com']
Я вполне могу использовать приведенную ниже логику для замены ‘[точка]’ на ‘.’
new_str= []
for new_char in old_str:
replaced_str = new_char.replace('[dot]', '.')
new_str.append(replaced_str)
print(new_str)
результат таков :
[['https://www.exabeam.com'], ['https://www.google.com/#q=exa beam']]
Итак, как достичь ожидаемого результата? Пожалуйста, помогите
Спасибо
Комментарии:
1. это всегда ‘https: //’?
2. да, в любом случае, решение @ Chris работает как шарм. Спасибо
3. Вывод, который вы показываете, неверен, и код, который вы показываете, не имеет ничего общего с фактическим вопросом.
4. Привет, да, я знаю. Я имею в виду, что я должен провести свое расследование, прежде чем задавать вопрос. Итак, вот что я сделал, и я знаю, что моя программа неэффективна. Спасибо
Ответ №1:
Используйте urllib
:
from urllib.parse import urlparse
[urlparse(i.replace("[dot]", ".")).netloc for i in old_str]
Вывод:
['www.exabeam.com', 'www.google.com']