У меня есть текстовый файл с разделителями-табуляцией фильмов и актеров. Записи в следующем формате:преобразование части текстового файла в список
The Shawshank Redemption ["Tim Robbins", "Morgan Freeman", "Bob Gunton", "William Sadler"]
The Dark Knight ["Christian Bale", "Heath Ledger", "Aaron Eckhart", "Michael Caine"]
Есть простой способ, чтобы питон относиться к актеру «список» в качестве структуры данных списка питона, а не строк с [
и ]
символами? Я попытался написать код, чтобы разрезать строку, начинающуюся с [
характера, обирать [
, ]
и "
использованием .strip()
и .rstrip()
, а затем с помощью .split(' ,')
составить список из оставшейся строки. но это не принесло результатов, которые я хотел.
Я не знаком с Функция eval(), почему это безопаснее? – Mike
@Mike перейдите по ссылке. Короче говоря, 'eval' будет оценивать абсолютно все, включая os.system ('rm -rf /') (НЕ ДЕЛАЙТЕ ЭТО), что буквально начнет удалять все ваши файлы. Конечно, на крошечном скрипте python, сохраненном локально на вашем компьютере, не так много шансов на это, но хорошей практикой в программировании является использование 'literal_eval' в любом случае. Единственное различие между ними состоит в том, что 'literal_eval' будет оценивать только допустимые структуры данных python. – jayelm
Спасибо за разъяснение, прочитав эти документы, это имеет смысл. ТАКЖЕ, моя новая переменная списка по умолчанию официально стала «best_list_ever» – Mike