Как преобразовать строку в массив?
Есть такого типа вводные данные, надо чтобы можно было вызывать их по одному, как в списке. Т.е print(abc[n]) где abc это массив из этих строк Пока что при таком способе выдает n’ую букву из первого элемента
print(abc[2]) = 0 print(abc[0]) = B
Отслеживать
71.7k 5 5 золотых знаков 20 20 серебряных знаков 52 52 бронзовых знака
задан 21 дек 2022 в 15:44
29 4 4 бронзовых знака
2 ответа 2
Сортировка: Сброс на вариант по умолчанию
s = 'B400099989 B000099990 B200099991 B400099992 B600099993' lst = s.split()
Для вывода всех элементов используйте цикл
for i in lst: print(i)
Отслеживать
ответ дан 21 дек 2022 в 15:49
36 2 2 бронзовых знака
Спасибо за ответ, я не совсем так написал вопрос, изначальные данные идут вертикально, класс у них list
21 дек 2022 в 15:52
Спасибо, за ответ, все заработало)
21 дек 2022 в 15:54
По умолчанию split работает по любым пробельным символам, включая переводы строки, которые у вас там видимо и есть между строками.
21 дек 2022 в 16:26
Если правильно понял вопрос, то строка по факту и есть массив символов, вы без проблем в цикле можете пробежаться по каждому из них:
abs = 'B400099989 B000099990 B200099991 B400099992 B600099993' for symbol in abs: print(symbol)
Можно еще записать так, принцип один и тот же:
abs = 'B400099989 B000099990 B200099991 B400099992 B600099993' for id in range(len(abs)): print(abs[id])
Как преобразовать строку в массив [дубликат]
Не понял зачем Вам exec здесь нужен. Используете обычный парсинг.
Вариант 1. Через функции строки
text = '[1, 2, 3]' parse = text.strip('[]').replace(' ', '').split(',') # список из строковых значений, потом можно преобразовать в нужный формат
Вариант 2. Через библиотеку json .
import json text = '[1, 2, 3]' parse = json.loads(text)
Вариант 3. Парсим через библиотеку re
parse = re.findall('([-+]?\d+)', text) # Если в строке-списке будут только целые числа parse = re.findall('([-+]?\d*\.\d+|\d+)', text) # Если будут еще десятичные
Что у Вас получился список можно проверить функцией type(parse) , которая выдаст
В первом и третьем варианте на выходе будут списки из строк с числами. Их нужно будет преобразовать.
Как преобразовать строку в массив в Python
Чтобы преобразовать строку в массив (список) в Python, вы можете использовать функцию list(). Просто передайте строку в качестве аргумента функции и она вернет массив, где каждый символ строки будет отдельным элементом. Например, в приведенном выше коде мы объявляем переменную string со значением «Hello, World!». Затем мы применяем функцию list() для преобразования строки в массив и сохраняем результат в переменной array. Наконец, мы выводим полученный массив, используя функцию print().
Детальный ответ
Как преобразовать строку в массив в Python
В Python есть несколько способов преобразовать строку в массив, в зависимости от того, как вы хотите разделить элементы и какую обработку вы хотите применить к каждому элементу. Давайте рассмотрим несколько подходов.
Разделить строку по разделителю
Если у вашей строки есть явный разделитель, например, запятая или пробел, вы можете использовать метод split() для разделения строки на массив элементов. Вот пример:
string = "apple, banana, cherry" array = string.split(", ") print(array)
['apple', 'banana', 'cherry']
В этом примере мы использовали запятую с пробелом в качестве разделителя. Метод split() разделяет строку на отдельные элементы, используя разделитель, и возвращает их в виде массива.
Преобразование каждого символа в отдельный элемент
Если вам нужно преобразовать каждый символ строки в отдельный элемент массива, вы можете использовать список-выражение (list comprehension) в сочетании с функцией list() . Вот пример:
string = "Python" array = [char for char in string] print(array)
['P', 'y', 't', 'h', 'o', 'n']
В этом примере мы проходимся по каждому символу строки с помощью цикла и добавляем его в новый массив, используя список-выражение. Функция list() преобразует список-выражение в массив.
Преобразование строки чисел в массив чисел
Если у вас есть строка, состоящая из чисел, разделенных определенным символом, вы можете использовать метод split() для разделения элементов и затем преобразовать каждый элемент в число с помощью функции map() . Здесь пример:
string = "1 2 3 4 5" array = list(map(int, string.split(" "))) print(array)
[1, 2, 3, 4, 5]
В этом примере мы сначала разделили строку по пробелам, используя метод split() . Затем мы применили функцию int() с помощью map() для преобразования каждого элемента в целое число. Функция list() преобразует результат в массив чисел.
Использование регулярных выражений
Если у вас есть сложные требования к разделителю или структуре строки, вы можете использовать модуль re для работы с регулярными выражениями. Здесь пример преобразования строки в массив, разделяя ее по нескольким разделителям:
import re string = "apple, banana: cherry|grape" array = re.split(", |: |\|", string) print(array)
['apple', 'banana', 'cherry', 'grape']
В этом примере мы использовали модуль re для разделения строки по запятой с пробелом, двоеточием с пробелом и вертикальной чертой. Функция re.split() разделяет строку с использованием переданного регулярного выражения и возвращает массив элементов.
Заключение
Теперь у вас есть несколько способов преобразовать строку в массив в Python. Вы можете выбрать подход, соответствующий вашим требованиям, и использовать его в своих проектах. Не забывайте экспериментировать с разными методами и находить наиболее подходящий для вашей конкретной задачи.
Как преобразовать строку в массив в Python
Чтобы преобразовать строку в массив (список) в Python, вы можете использовать функцию list(). Просто передайте строку в качестве аргумента функции и она вернет массив, где каждый символ строки будет отдельным элементом. Например, в приведенном выше коде мы объявляем переменную string со значением «Hello, World!». Затем мы применяем функцию list() для преобразования строки в массив и сохраняем результат в переменной array. Наконец, мы выводим полученный массив, используя функцию print().
Детальный ответ
Как преобразовать строку в массив в Python
В Python есть несколько способов преобразовать строку в массив, в зависимости от того, как вы хотите разделить элементы и какую обработку вы хотите применить к каждому элементу. Давайте рассмотрим несколько подходов.
Разделить строку по разделителю
Если у вашей строки есть явный разделитель, например, запятая или пробел, вы можете использовать метод split() для разделения строки на массив элементов. Вот пример:
string = "apple, banana, cherry" array = string.split(", ") print(array)
['apple', 'banana', 'cherry']
В этом примере мы использовали запятую с пробелом в качестве разделителя. Метод split() разделяет строку на отдельные элементы, используя разделитель, и возвращает их в виде массива.
Преобразование каждого символа в отдельный элемент
Если вам нужно преобразовать каждый символ строки в отдельный элемент массива, вы можете использовать список-выражение (list comprehension) в сочетании с функцией list() . Вот пример:
string = "Python" array = [char for char in string] print(array)
['P', 'y', 't', 'h', 'o', 'n']
В этом примере мы проходимся по каждому символу строки с помощью цикла и добавляем его в новый массив, используя список-выражение. Функция list() преобразует список-выражение в массив.
Преобразование строки чисел в массив чисел
Если у вас есть строка, состоящая из чисел, разделенных определенным символом, вы можете использовать метод split() для разделения элементов и затем преобразовать каждый элемент в число с помощью функции map() . Здесь пример:
string = "1 2 3 4 5" array = list(map(int, string.split(" "))) print(array)
[1, 2, 3, 4, 5]
В этом примере мы сначала разделили строку по пробелам, используя метод split() . Затем мы применили функцию int() с помощью map() для преобразования каждого элемента в целое число. Функция list() преобразует результат в массив чисел.
Использование регулярных выражений
Если у вас есть сложные требования к разделителю или структуре строки, вы можете использовать модуль re для работы с регулярными выражениями. Здесь пример преобразования строки в массив, разделяя ее по нескольким разделителям:
import re string = "apple, banana: cherry|grape" array = re.split(", |: |\|", string) print(array)
['apple', 'banana', 'cherry', 'grape']
В этом примере мы использовали модуль re для разделения строки по запятой с пробелом, двоеточием с пробелом и вертикальной чертой. Функция re.split() разделяет строку с использованием переданного регулярного выражения и возвращает массив элементов.
Заключение
Теперь у вас есть несколько способов преобразовать строку в массив в Python. Вы можете выбрать подход, соответствующий вашим требованиям, и использовать его в своих проектах. Не забывайте экспериментировать с разными методами и находить наиболее подходящий для вашей конкретной задачи.