Python - преобразовать строку в массив - PullRequest
0 голосов
/ 25 апреля 2018

Надеюсь, это очень легко.

Как мне преобразовать следующую строку в массив с python (эта строка может содержать неопределенное количество «элементов»).

'["Foo","Bar","Baz","Woo"]'

Это определенно строковое представление. type() дал:

<class 'str'>

Обновление:

Понял.

interestedin = request.POST.get('interestedIn')[1:-1].split(',')

interested = []

for element in interestedin:
    interested.append(element[1:-1])

где request.POST.get('interestedIn') дал '["Foo","Bar","Baz","Woo"]' список строк "вещь".

Не первоапрельский! Обещание: D

Ответы [ 2 ]

0 голосов
/ 26 апреля 2019

Вы можете сделать это

import ast

list = '["Foo","Bar","Baz","Woo"]'
list = ast.literal_eval(list)
print list
0 голосов
/ 25 апреля 2018

Работа со строкой '["Foo", "Bar", "Baz", "Woo"]'

str = '["Foo","Bar","Baz","Woo"]'
str1 = str.replace(']','').replace('[','')
l = str1.replace('"','').split(",")
print l # ['Foo', 'Bar', 'Baz', 'Woo'] A list

Если вы имеете в виду использование массива python module , то выможно сделать так:

import array as ar
x=ar.array('c')  #char array
for i in ['Foo', 'Bar', 'Baz', 'Woo']: x.extend(ar.array('c',i))
print x  #array('c', 'FooBarBazWoo')

Будет намного проще, если вы решите использовать numpy:

import numpy as np
y=np.array(['Foo', 'Bar', 'Baz', 'Woo'])
print y #  ['Foo' 'Bar' 'Baz' 'Woo']
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...