Как превратить строку в список python
Перейти к содержимому

Как превратить строку в список python

  • автор:

Как преобразовать строку в список в PYTHON?

Zarom

Поскольку вы очень редко отмечаете ответы как правильные, отвечать я вам не буду. И другим не советую.

Yura Khlyan @MAGistr_MTM
Где здесь строка [‘Первое, ‘Второе’, ‘Третье’, ‘Четвертое’]? У вас список
Дмитрий Шицков, Где вы видите строку?

Amigun

Amigun @Amigun Автор вопроса

Yura Khlyan, ВОТ ИМЕННО, ЭТО СПИСОК. НО СТРОКА
Типа, можно изобразить как:
x = ‘[‘Первое, ‘Второе’, ‘Третье’, ‘Четвертое’]’
Оттуда нельзя элементы вызвать, т.к. это строка.
А мне нужно превратить в список

Amigun, Это список строк.
Решения вопроса 1

fox_12

Владимир Куц @fox_12 Куратор тега Python
Расставляю биты, управляю заряженными частицами

Как преобразовать эту строку в список? Чтобы я мог вызывать элементы

например 2 элемент

>>> import json >>> str1 = "['Первое', 'Второе', 'Третье', 'Четвертое']" >>> json.loads(str1.replace("'", '"'))[1] 'Второе'

P.S. В оригинале у вас не совсем корректный список в строке — «Первое» не закрывается кавычкой.
[‘Первое, ‘Второе’, ‘Третье’, ‘Четвертое’]
Если это не «бага а фича» . — то нужны дополнительные шаги для приведения списка к корректному виду.

Ответ написан более трёх лет назад
Комментировать
Нравится 3 Комментировать
Ответы на вопрос 3
Zotik204783 @Zotik204783
str = «[‘Первое’, ‘Второе’, ‘Третье’, ‘Четвертое’]»
lst = eval(str)
print(lst[1])
Ответ написан более трёх лет назад
Комментировать
Нравится 3 Комментировать
undisclosed @undisclosed

Если у вас именно строка задается в таком виде: «[‘Первое, ‘Второе’, ‘Третье’, ‘Четвертое’]», то можно разделить ее по разделителю «, » и получить список элементов с кавычками в таком виде:

["['Первое", "'Второе'", "'Третье'", "'Четвертое']"]

А затем обрезать ненужные символы с обоих концов элемента с помощью метода strip().
В результате получим список из элементов, без лишних символов, к которым можно обращаться по номеру.
Все это делается одной строкой кода — list comprehension.
Пример кода:

string = "['Первое, 'Второе', 'Третье', 'Четвертое']" res = [element.strip("'[]") for element in string.split(", ")] print(res[1])

В ответ выдаст:
Второе
Ответ написан более трёх лет назад
Комментировать
Нравится 1 Комментировать

laviol

Кодер-разнорабочий

Получить из строки элементы по заданному шаблону можно довольно просто используя регулярные выражения и встроенную в Python библиотеку re.
Для проверки своего регулярного выражения (с подсказками по их составлению) существует множество онлайн сервисов, достаточно погуглить.

Ответ написан более трёх лет назад
Комментировать
Нравится Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

python

  • Python
  • +1 ещё

Почему при большом количестве строк async выдает ошибку?

  • 1 подписчик
  • 55 минут назад
  • 10 просмотров

Преобразование строк в список, кортеж или множество символов

Для преобразования строки в список символов необходимо исходную строку передать в класс list() . Это полезно для каких то преобразований в цикле с отдельными символами в строке (удаление/добавление/изменение) или если нужно отобразить строку наоборот (развернуть строку).

Пример преобразования строки в список символов и совершение различных манипуляции.

>>> line = 'абракадабра' >>> line_list = list(line) >>> line_list # ['а', 'б', 'р', 'а', 'к', 'а', 'д', 'а', 'б', 'р', 'а'] # изменим 4 символ на 'у', добавим в конец 'с' и удалим 1 символ >>> line_list[3] = 'y' >>> line_list.append('c') >>> line_list.pop(0) >>> line_list # ['б', 'р', 'y', 'к', 'а', 'д', 'а', 'б', 'р', 'а', 'c'] # развернем строку >>> rev = list(reversed(line_list)) >>> rev # ['c', 'а', 'р', 'б', 'а', 'д', 'а', 'к', 'y', 'р', 'б'] # теперь снова получим строку >>> line = ''.join(rev) >>> line # 'cарбадакyрб' 

Преобразование строки в кортеж производится аналогичным способом, только строка передается в класс tuple() . Кортеж это неизменяемый тип данных, следовательно дальнейшие изменения кортежа недоступны.

# преобразование строки в кортеж символов >>> line = 'абракадабра' >>> line_tuple = tuple(line) >>> line_tuple # ('а', 'б', 'р', 'а', 'к', 'а', 'д', 'а', 'б', 'р', 'а') # теперь снова получим строку >>> line = ''.join(line_tuple) # 'абракадабра' 

Преобразование строки в множество полезно, когда необходимо получить уникальные символы в строке (без повторов). Обратите внимание на то, что после преобразования строки в множество порядок следования символов не сохраняется!

# преобразование строки в множество символов >>> line = 'абракадабра' >>> line_set = set(line) >>> line_set #

Преобразование символов строки в код ASCII и обратно.

В Python есть возможность выполнить преобразование одиночного символа в его целочисленный код ASCII, для чего нужно передать этот символ функции ord() , она возвращает фактическое числовое значение соответствующего байта в памяти. Обратное преобразование выполняется с помощью функции chr() , она получает целочисленный код ASCII и преобразует его в соответствующий символ:

>>> ord('s') # 115 >>> chr(115) # 's' 

Эти функции можно применить ко всем символам строки в цикле. Например, чтобы получить следующий по алфавиту символ, его можно преобразовать в число и выполнить математическое действие над ним:

>>> x = 'А' >>> y = ord(x) + 1 >>> chr(y) # 'Б' 
  • ОБЗОРНАЯ СТРАНИЦА РАЗДЕЛА
  • Преобразование строки в число
  • Строку в список, кортеж или множество символов
  • Одинарные, двойные и тройные кавычки в строке Python
  • Вывод специальных символов в строке Python «как есть»
  • Объединение и повторение строк
  • Индексирование строк
  • Использование срезов строк
  • Cрез строки Python от заданного символа/знака до конца строки
  • Создание макета для печати базовыми методами строк
  • Способы форматирования текстовых строк
  • Подсчет повторений слов в тексте, деление строки на список слов
  • Удаление слова из строки Python по фрагменту или шаблону
  • Удаление пунктуации из строки
  • Деление строки по заглавным буквам
  • Создание отчетов и писем по шаблонам

3 варианта, как сконвертировать список(list) в строку в Python 3

Это метод строк — он берет список и соединяет элементы списка в строку.

1. Если у вас список строк, можно просто использовать join.

my_list = ["Pythonist.ru", "-", "хороший", "сайт", "по","Python"] print(" ".join(my_list)) >>>Pythonist.ru - хороший сайт по Python

2. Если это список чисел, вы можете использовать map() для приведения всех элементов списка к строке, а потом просто склеить их в одну строку методом join()

my_list2 = [66, 77, 88, 99] print(" ".join(map(str, my_list2))) >>> 66 77 88 99

3. Если вы хотите получить разделенные запятой строки, можно использовать такой shortcut кода:

my_list3 = [11, 22, 33, 44, 55] print(str(my_list3).strip('[]')) >>> 11, 22, 33, 44, 55

Больше 50 задач по Python c решением и дискуссией между подписчиками можно посмотреть тут

Преобразование строки в список символов в Python

В этом посте мы обсудим, как преобразовать строку в список символов в Python.

Хотя Python позволяет вам получить доступ к отдельным символам строки с помощью оператора индекса [] а также позволяет легко перебирать строку, но в зависимости от вашего варианта использования вы можете создать список из символов строки. Это может быть достигнуто либо с помощью конструктора списка, либо с помощью понимания списка.

1. Использование list() конструктор

The list() конструктор строит список непосредственно из итерируемого объекта, а поскольку строка является итерируемой, вы можете создать из нее список. Выполнение list(s) на веревке s возвращает список всех символов, присутствующих в строке, в том же порядке, что и символы строки. Итак, все, что вам нужно сделать, это передать ваш строковый объект конструктору списка, как показано ниже:

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

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