Перейти к содержимому

Как удалить часть строки в питоне

  • автор:

Python, как из списка удалить часть строки у каждого элемента?

Как мне сделать, чтобы только часть удалилась в каждом элементе?

Отслеживать

задан 24 мар 2021 в 17:21

147 1 1 серебряный знак 14 14 бронзовых знаков

3 ответа 3

Сортировка: Сброс на вариант по умолчанию

Можно использовать списковое сокращение и функцию split :

image_list = ['image\\TestPh.jpg', 'image\\376ot.jpg', 'image\\3ugu.jpg', 'image\\inypf.jpg', 'image\\vqhxt.jpg', 'image\\wqfgb.jpg'] image_list = [x.split('\\')[1] for x in image_list] print(image_list) 
['TestPh.jpg', '376ot.jpg', '3ugu.jpg', 'inypf.jpg', 'vqhxt.jpg', 'wqfgb.jpg'] 

Как удалить часть строки в питоне

Чтобы удалить часть строки, можно с помощью срезов собрать новую строку.

Есть что добавить? Зарегистрируйтесь

Курсы по программированию на Хекслете

Backend-разработка

Разработка серверной части сайтов и веб-приложений

Frontend-разработка

Разработка внешнего интерфейса сайтов и веб-приложений и верстка

Создание сайтов

Разработка сайтов и веб-приложений на JS, Python, Java, PHP и Ruby on Rails

Тестирование

Ручное тестирование и автоматизированное тестирование на JS, Python, Java и PHP

Аналитика данных

Сбор, анализ и интерпретация данных на Python

Интенсивные курсы

Интенсивное обучение для продолжающих

DevOps

Автоматизация настройки локального окружения и серверов, развертывания и деплоя

Веб-разработка

Разработка, верстка и деплой сайтов и веб-приложений, трудоустройство для разработчиков

Математика для программистов

Обучение разделам математики, которые будут полезны при изучении программирования

JavaScript

Разработка сайтов и веб-приложений и автоматизированное тестирование на JS

Python

Веб-разработка, автоматическое тестирование и аналитика данных на Python

Java

Веб-разработка и автоматическое тестирование на Java

PHP

Веб-разработка и автоматическое тестирование на PHP

Ruby

Разработка сайтов и веб-приложений на Ruby on Rails

Go

Курсы по веб-разработке на языке Go

HTML

Современная верстка с помощью HTML и CSS

SQL

Проектирование базы данных, выполнение SQL-запросов и изучение реляционных СУБД

Git

Система управления версиями Git, регулярные выражения и основы командой строки

Похожие вопросы

01 ноября 2021

01 ноября 2021

  • python строки
  • python массивы

01 ноября 2021

  • python строки
  • python массивы

01 ноября 2021

  • 8 800 100 22 47 бесплатно по РФ
  • +7 495 085 28 38 бесплатно по Москве

Направления

  • Курсы «Backend-разработка»
  • Курсы «Frontend-разработка»
  • Курсы «Создание сайтов»
  • Курсы «Тестирование»
  • Курсы «Аналитика данных»
  • Интенсивные курсы
  • Курсы DevOps
  • Курсы «Веб-разработка»
  • Курсы «Математика для программистов»
  • Все курсы

О Хекслете

  • О нас
  • Карьера в Хекслете
  • Хекслет Колледж

ООО «Хекслет Рус» 432071, г. Ульяновск, пр-т Нариманова, дом 1Г, оф. 23 ОГРН 1217300010476

  • Справка
  • Вопросы и ответы
  • Сообщество
  • Дополнительно
  • Условия использования
  • Соглашение об обработке ПД
  • Оферта
  • Акции

Удаление подстроки с конца строки в Python

В программировании на Python часто возникает ситуация, когда нужно удалить определенную подстроку с конца строки. В качестве примера можно привести ситуацию, когда есть URL-адрес, и требуется удалить из него расширение домена, например, ‘.com’.

url = 'example.com'

Однако, при попытке использовать метод strip() , который предназначен для удаления символов с начала и конца строки, результат может быть неожиданным:

print(url.strip('.com')) # Вывод: 'example'

В этом случае метод strip() удаляет все символы, указанные в аргументе, с обоих концов строки, пока не встретит символ, не указанный в аргументе. Поэтому он удаляет не только ‘.com’, но и любые другие символы ‘c’, ‘o’, ‘m’ и ‘.’, которые встречаются в конце строки, что может привести к неправильному результату.

Для того чтобы корректно удалить подстроку с конца строки, можно использовать метод rsplit() . Этот метод разбивает строку на подстроки, используя указанный разделитель, и возвращает список подстрок. Аргумент ‘1’ указывает, что разбиение должно производиться с конца строки и только один раз.

print(url.rsplit('.com', 1)[0]) # Вывод: 'example'

В данном случае первый элемент списка будет содержать исходную строку без указанной подстроки ‘.com’. Этот способ более надежен, так как он удаляет именно требуемую подстроку, а не отдельные символы.

Таким образом, для удаления подстроки с конца строки в Python рекомендуется использовать метод rsplit() .

Python-сообщество

[RSS Feed]

  • Начало
  • » Python для новичков
  • » Удаление части строки

#1 Ноя. 26, 2013 14:05:36

medelgover Зарегистрирован: 2013-09-20 Сообщения: 23 Репутация: 0 Профиль Отправить e-mail

Удаление части строки

Как удалить часть строки до определенного символа?

#2 Ноя. 26, 2013 14:09:21

FishHook От: Зарегистрирован: 2011-01-08 Сообщения: 8312 Репутация: 568 Профиль Отправить e-mail

Удаление части строки

Строки — неизменяемые объекты, поэтому удалить из строки ничего не получится, просто создавайте новый объект

s = "dsadfdsfnjkvnsaasda" index = 8 s = s [index:] print s 

#3 Ноя. 26, 2013 14:16:30

medelgover Зарегистрирован: 2013-09-20 Сообщения: 23 Репутация: 0 Профиль Отправить e-mail

Удаление части строки

FishHook
Строки — неизменяемые объекты, поэтому удалить из строки ничего не получится, просто создавайте новый объект

В вашем примере удаляется первые 8 символов.
Мне нужно удалить неизвестное количество символов, все что скажем до символа ‘/’
Пример:
s = “dsadfdsf/njkvnsaasda”
чтото делаем
получаем
s = “njkvnsaasda”

#4 Ноя. 26, 2013 15:04:42

Master_Sergius Зарегистрирован: 2013-09-12 Сообщения: 271 Репутация: 7 Профиль Отправить e-mail

Удаление части строки

И что же вам мешает определить позицию этого символа и потом сделать так, как вам уже подсказали?

#5 Ноя. 26, 2013 15:19:20

medelgover Зарегистрирован: 2013-09-20 Сообщения: 23 Репутация: 0 Профиль Отправить e-mail

Удаление части строки

Master_Sergius
И что же вам мешает определить позицию этого символа и потом сделать так, как вам уже подсказали?

да ничего не мешает. просто эта конструкция не очень красиво сделана.

s = "dsadfdsfnj/kvnsaasda" temp=s.find('/') index = temp s = s [index:] s = s [1:] print s 
kvnsaasda 

Я думал что существует некое “готовое” выражение. Ну и на том спасибо.

Отредактировано medelgover (Ноя. 26, 2013 15:20:37)

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *