python. как сохранить несколько значений в список через input
Вы можете сохранять переменную в файл и загружать ее из него с помощью встроенного модуля pickle :
import pickle import os storage_filename = "storage.pickle" list = ['спать', 'Машина', 'Мотоцикл', 'Еще что-нибудь', 'тд'] if not os.path.exists(storage_filename): # Если файла не существует with open(storage_filename, "wb") as f: # То создаем его pickle.dump(list, f) # Сохрняя в него наш список else: # Если же существует with open(storage_filename, "rb") as f: list = pickle.load(f) # То загружаем из него список num = input('Введите слово:') list.append(num) for i in list: print(i) with open(storage_filename, "wb") as f: pickle.dump(list, f) # Сохраняем измененный список в файл
Как сохранить данные из списка?
Как брать данные из списка .txt и сохранить результат в другом .txt?
Приветствую Всех! Я плохо знаю язык пайтона, но мне нужно изменить этот код: import hashlib.
Динамические элементы, или как сохранить данные из выпадающего списка
Доброго времени суток. Помогите с задачей, пожалуйста. Есть dropdownlist, в нем есть несколько.
Как сохранить данные из dataGridView1 в txt файл и открывать данные из txt в программе без удаления имеющихся
1) Помогите пожалуйста. Мне нужно сохранить данные из dataGridView1 в txt файл так, чтобы при.
Костыли любой сложности
201 / 146 / 36
Регистрация: 27.10.2019
Сообщений: 843
Ohlamon77,
data = 100 s=[] with open(myfile, 'rb') as f: chunk = f.read(data) while chunk: chunk = f.read(data) s.append(list(chunk)) #or extend print(s)
ошибка в том что при каждой итерации создавался новый экземпляр s старый удалялся
Костыли любой сложности
201 / 146 / 36
Регистрация: 27.10.2019
Сообщений: 843

Сообщение было отмечено Ohlamon77 как решение
Решение
Ohlamon77,
все равно выдаёт такую информацию, даже при s=[]
это потому что мой код был несколько не верен,- пропускал первую строку. и пустой список получался если в файле всего одна строка (точнее весь файл читается в одну строку)
1 2 3 4 5 6
data = 100 s=[] with open(myfile, 'rb') as f: while chunk:=f.read(data): s.append(list(chunk)) #or extend print(s) #s=[] только если файл пуст чаще [[a,b,c],[e,f,g]. ]
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
Помогаю со студенческими работами здесь
Как сохранить в БД из раскрывающегося списка
В списке даны буквенные значения, но надо что бы в базу данных сохранялись численные, к примеру В.
Как сохранить данные?
Здравствуйте, подскажите, как сохранить данные, на адрес приходят вот такие данные:
Как сохранить данные datagrid?
Здравствуйте всем, как можно сохранить данные datagrid

Как сохранить данные в XML?
Доброго времени суток, столкнулся со следующей проблемой, у меня есть XML файл. <?xml.
Как сохранить данные в localstorage?
<textarea var text = document.getElementById(‘primeContainer’).
Операции со списками в Python
Большинство создаваемых вами списков будут динамическими, то есть вы создадите список и затем добавляйте и удаляйте элементы из него, так обычно работают многие программы.
Например, вы можете создать игру, в которой игрок должен отстреливать инопланетян с неба. Вы можете сохранить первоначальный набор инопланетян в списке и затем удалять инопланетян из списка каждый раз, когда их сбивают. Каждый раз, когда на экране появляется новый инопланетянин, вы добавляете его в список. Ваш список инопланетян будет уменьшаться и увеличиваться в течение игры.
Изменение элементов в списке
Возможно, вы захотите добавить новый элемент в список по какой-либо причине. Например, по вышеописанной игре, вы захотите, чтобы новые инопланетяне появлялись в игре, добавляли новые данные в визуализацию или добавляли новых зарегистрированных пользователей на созданный вами веб-сайт, приложение или игру. Python предоставляет несколько способов добавления новых данных в существующие списки.
Добавление элементов в конец списка
Самый простой способ добавить новый элемент в список — использовать специальный для этого оператор append() . Когда вы добавляете элемент в список, он добавляется в конец списка. Используя тот же список, что и в статье «Списки в Python», мы добавим новый элемент ‘ducati’ в его конец:
motorcycles = ['honda', 'yamaha', 'suzuki'] print(motorcycles) motorcycles.append('ducati') print(motorcycles)
Метод append () добавляет ‘ducati’ в конец списка, не затрагивая другие элементы в списке и получаем вот такой результат:
['honda', 'yamaha', 'suzuki'] ['honda', 'yamaha', 'suzuki', 'ducati']
Метод append () позволяет легко создавать списки динамически. Например, вы можете начать с пустого списка, а затем добавить элементы в список с помощью ряда операторов append () . Используя пустой список, давайте добавим в список элементы «honda», «yamaha» и «suzuki»:
motorcycles = [] motorcycles.append('honda') motorcycles.append('yamaha') motorcycles.append('suzuki') print(motorcycles)
В итоге список выглядит точно так же, как списки в предыдущих примерах:
['honda', 'yamaha', 'suzuki']
Построение списков таким способом очень популярно, так как невозможно знать все данные, которые ваши пользователи хотят сохранить в программе, до ее запуска. Например, чтобы контролировать пользователей и процесс их регистрации, начните с пустого списка, в котором потом будут храниться значения пользователей. Затем следует добавить функцию, которая будет добавлять новое значение в этот список.
Вставка элементов в список
Вы можете добавить новый элемент в любую позицию списка, используя метод insert (). Это можно сделать, указав индекс нового элемента и значение нового элемента.
motorcycles = ['honda', 'yamaha', 'suzuki'] motorcycles.insert(0, 'ducati') print(motorcycles)
В этом примере код вставляет значение «ducati» в начале списка. Метод insert () открывает пробел в позиции 0 и сохраняет значение ‘ducati’ в этом месте. Эта операция сдвигает все остальные значения в списке на одну позицию вправо. В итоге получаем вот такой результат:
['ducati', 'honda', 'yamaha', 'suzuki']
Удаление элементов из списка
Бывает, возникает необходимость удалить элемент или набор элементов из списка. На примере нашей воображаемой игры, когда игрок сбивает инопланетянина с неба, вы, скорее всего, захотите удалить этот элемент из списка активных инопланетян. Или когда пользователь решит удалить свою учетную запись в веб-приложении, которое вы создали, вы захотите удалить этого пользователя из списка активных пользователей. Вы можете удалить элемент в соответствии с его положением в списке или по его значению.
Удаление элемента с помощью оператора «del»
Если вам известна позиция элемента, который вы хотите удалить из списка, вы можете использовать оператор del .
motorcycles = ['honda', 'yamaha', 'suzuki'] print(motorcycles) del motorcycles[0] print(motorcycles)
Код использует «del» для удаления первого элемента, «honda», из списка мотоциклов и получаем соответствующий результат:
['honda', 'yamaha', 'suzuki'] ['yamaha', 'suzuki']
Вы можете удалить элемент из любой позиции в списке, используя оператор del, если вы знаете его индекс. Например, вот как удалить второй элемент «yamaha» из списка:
motorcycles = ['honda', 'yamaha', 'suzuki'] print(motorcycles) del motorcycles[1] print(motorcycles)
Второй мотоцикл удален из списка и получаем результат:
['honda', 'yamaha', 'suzuki'] ['honda', 'suzuki']
Примечание: В обоих примерах вы больше не можете получить доступ к значению, которое было удалено из списка после использования оператора del .
Удаление элемента с помощью оператора pop ()
Иногда есть необходимость использовать значение элемента после его удаления из списка. Например, вы можете получить координаты x и y в корабля пришельца в нашей воображаемой игре, который только что сбили, чтобы вы могли нарисовать взрыв в этой позиции. В веб-приложении, например, может потребоваться удалить пользователя из списка активных участников, а затем добавить этого пользователя в список неактивных участников.
Метод pop () удаляет последний элемент в списке, но позволяет вам работать с этим элементом после его удаления. Термин «pop» происходит от того, что вы думаете о списке как о пачке предметов и выталкиваете один предмет из верхней его части. Давайте удалим мотоцикл из нашего списка:
motorcycles = ['honda', 'yamaha', 'suzuki'] print(motorcycles) popped_motorcycle = motorcycles.pop() print(motorcycles) print(popped_motorcycle)
Начнем с определения и вывода списка мотоциклов, затем мы извлекаем значение из списка и сохраняем его в переменной «popped_motorcycle». Далее выводим список, чтобы показать, что значение было удалено из списка. Затем мы выводим удалённое значение, чтобы доказать, что у нас все еще есть доступ к удаленному значению. Вывод показывает, что значение «suzuki» было удалено из конца списка и теперь хранится в переменной «popped_motorcycle»:
['honda', 'yamaha', 'suzuki'] ['honda', 'yamaha'] suzuki
Чем ещё может быть полезен метод pop () ? Представьте, что мотоциклы в списке хранятся в хронологическом порядке в зависимости от того, когда мы владели ими. Если это так, мы можем использовать метод pop () , чтобы напечатать инструкцию о последнем мотоцикле, который мы купили:
motorcycles = ['honda', 'yamaha', 'suzuki'] last_owned = motorcycles.pop() print("The last motorcycle I owned was a " + last_owned.title() + ".")
Вывод представляет собой простое предложение о самом последнем мотоцикле, который у нас был:
The last motorcycle I owned was a Suzuki.
Удаление элементов из любой позиции в списке
На самом деле вы можете использовать pop () для удаления элемента в списке в любой позиции, включив в скобки индекс элемента, который вы хотите удалить.
motorcycles = ['honda', 'yamaha', 'suzuki'] first_owned = motorcycles.pop(0) print('The first motorcycle I owned was a ' + first_owned.title() + '.')
В этом примере мы указываем, чтобы в выводе появлялся первый элемент списка и выводим его на экран, соответственно получаем:
The first motorcycle I owned was a Honda.
Помните, что каждый раз, когда вы используете pop () , элемент, с которым вы работаете, больше не сохраняется в списке, но он доступен в другой переменной. Если вы не уверены, использовать ли оператор del или метод pop () , вот простой способ, чтобы решить: когда вы хотите удалить элемент из списка и никоим образом не использовать этот элемент, используйте оператор del ; если вы хотите использовать элемент при его удалении, используйте метод pop () .
Удаление элемента по значению
Иногда вы не знаете положение элемента в списке, которое хотите удалить из него. Если вам известно только значение элемента, который вы хотите удалить, вы можете использовать метод remove () .
Например, допустим, мы хотим удалить значение «ducati» из списка мотоциклов.
motorcycles = ['honda', 'yamaha', 'suzuki', 'ducati'] print(motorcycles) motorcycles.remove('ducati') print(motorcycles)
Код сообщает Python, чтобы выяснить, где в списке появляется «ducati», и удалить этот элемент:
['honda', 'yamaha', 'suzuki', 'ducati'] ['honda', 'yamaha', 'suzuki']
Вы также можете использовать метод remove () для работы со значением, которое удаляется из списка. Давайте удалим значение «ducati» и напишем причину его удаления из списка:
motorcycles = ['honda', 'yamaha', 'suzuki', 'ducati'] print(motorcycles) too_expensive = 'ducati' motorcycles.remove(too_expensive) print(motorcycles) print("\nA " + too_expensive.title() + " is too expensive for me.")
После определения списка мы сохраняем значение «ducati» в переменной с именем «too_expensive». Затем используйте эту переменную, чтобы сообщить Python, какое значение удалить из списка. Значение «ducati» было удалено из списка, но все еще сохраняется в переменной «too_expensive», что позволяет нам распечатать заявление о том, почему мы удалили «ducati» из списка мотоциклов:
['honda', 'yamaha', 'suzuki', 'ducati'] ['honda', 'yamaha', 'suzuki'] A Ducati is too expensive for me.
Примечание: Метод remove () удаляет только первое вхождение указанного вами значения. Если существует вероятность, что значение появляется в списке более одного раза, нужно использовать циклы, чтобы определить, все ли значения этого значения были удалены. Вы узнаете, как это сделать, в статье Циклы в Python.
Работа над списком
Зачастую списки формируются в непредсказуемом порядке, не всегда можно контролировать, как пользователи предоставляют свои данные. Часто требуется представлять информацию в определенном порядке. Иногда нужно сохранить первоначальный порядок в списке, а в других случаях нужно изменить его. Python предоставляет несколько различных способов организации ваших списков, в зависимости от ситуации.
Постоянная сортировка списка с помощью метода sort ()
Метод sort () позволяет относительно легко сортировать список. Представьте, что у нас есть список автомобилей, и мы хотим представить его в алфавитном порядке. Чтобы упростить задачу, давайте предположим, что все значения в списке строчные.
cars = ['bmw', 'audi', 'toyota', 'subaru'] cars.sort() print(cars)
Метод sort () , показанный в примере, хранит перечень автомобилей в алфавитном порядке, и далее нельзя его переделать к первоначальному состоянию:
['audi', 'bmw', 'subaru', 'toyota']
Вы также можете отсортировать этот список в обратном алфавитном порядке, передав аргумент reverse = True методу sort ( ). Следующий пример сортирует список автомобилей в обратном алфавитном порядке:
cars = ['bmw', 'audi', 'toyota', 'subaru'] cars.sort(reverse=True) print(cars)
И получаем вот такой соответствующий вывод данных:
['toyota', 'subaru', 'bmw', 'audi']
Временная сортировка списка с помощью функции sorted ()
Чтобы сохранить первоначальный порядок списка, но представить его в отсортированном порядке, вы можете использовать функцию sorted () . Функция sorted () позволяет вам отображать ваш список в определенном порядке, но не влияет на фактический порядок списка. Давайте попробуем эту функцию в списке автомобилей:
cars = ['bmw', 'audi', 'toyota', 'subaru'] print("Here is the original list:") print(cars) print("\nHere is the sorted list:") print(sorted(cars)) print("\nHere is the original list again:") print(cars)
Сначала мы печатаем список в исходном порядке, а затем в алфавитном порядке. После отображения списка в новом порядке, мы показываем, что список все еще сохраняется в своем первоначальном порядке.
Here is the original list: ['bmw', 'audi', 'toyota', 'subaru'] Here is the sorted list: ['audi', 'bmw', 'subaru', 'toyota'] Here is the original list again: ['bmw', 'audi', 'toyota', 'subaru']
Обратите внимание, что список все еще существует в своем первоначальном порядке после использования функции sorted () . Функция sorted () также может принимать аргумент reverse = True , если вы хотите отобразить список в обратном алфавитном порядке.
Примечание: Сортировка списка по алфавиту немного сложнее, когда все значения не в нижнем регистре. Есть несколько способов интерпретировать заглавные буквы, когда вы выбираете порядок сортировки, и указание точного порядка может быть более сложным, чем мы хотим сделать в данный момент. Однако большинство подходов к сортировке будут основываться непосредственно на том, что вы узнали в этом разделе.
Вывод списка в обратном порядке
Чтобы изменить исходный порядок списка, вы можете использовать метод reverse () . Если бы мы изначально хранили список автомобилей в хронологическом порядке в соответствии с тем, когда мы его составляли, мы можем легко перестроить список в обратном хронологическом порядке:
cars = ['bmw', 'audi', 'toyota', 'subaru'] print(cars) cars.reverse() print(cars)
Обратите внимание, что reverse () не сортирует в обратном порядке по алфавиту; он просто меняет порядок списка:
['bmw', 'audi', 'toyota', 'subaru'] ['subaru', 'toyota', 'audi', 'bmw']
Метод reverse ( ) постоянно меняет порядок списка, но вы можете в любое время вернуться к исходному порядку, применив reverse () к тому же списку во второй раз.
Определение длины списка
Вы можете быстро определить количество элементов в списке с помощью функции len () . Список в нашем примере состоит из четырех элементов:
cars = ['bmw', 'audi', 'toyota', 'subaru'] print(len(names))
Соотвественно получаем вывод:
Вы дальнейшем Вы поймёте как функция len () полезна, например в нашей воображаемой игре нужно определить количество инопланетян, которые все еще необходимо сбить, или определить количество данных, которыми вы должны управлять в визуализации, или выяснить количество зарегистрированных пользователи на сайте и так далее.
Примечание
Основная статья: Циклы со списками в Python
Основная статья: Дополнительные операции со списками в Python
В этой статье вы узнали, что такое списки и как работать с отдельными элементами в списке. Вы узнали, как определить список и как добавлять и удалять элементы в нём. Вы научились сортировать списки постоянно и временно для отображения.
В дальнейших статьях вы узнаете, как более эффективно работать с элементами в списке, как создавать циклы каждого элемента в списке, используя всего несколько строк кода, вы сможете эффективно работать, даже если ваш список содержит тысячи или миллионы данных. Если возникли вопросы, комментарии, то оставляйте их на странице обсуждения.
Другие статьи о Python
Язык программирования Python
- Операции со строкой
- Операции со списками
- Дополнительные операции со списками
- Операции со словарями
- Циклы
- Циклы со списками
- Дополнительные операции со словарями
- Ввод данных
- Условные операторы
- Циклы со словарями
- Функции
- Классы
- Работа с файлами в Python
- Тестирование кода в Python
3 способа записи списка в файл на Python

Краткое описание: В этой краткой статье демонстрируются три способа записи списка в файл на языке сценариев Python.
В предыдущем совете по написанию сценариев мы показали вам, как выполнять команды Shell в Python. В этой статье мы покажем вам несколько способов записи списка в файл на Python.
Запись списка в файл на Python
На самом деле методы, которые мы собираемся обсудить здесь, используются для записи текста в файл на Python. В примерах, которые мы здесь используем, обсуждается запись списка в файл, но вы можете использовать его для написания любого текста. строка и т. д. с использованием функций, упомянутых здесь.
Метод 1: Запись списка в файл строка за строкой в Python, используя print
Команда печати в Python может использоваться для печати содержимого списка в файл. Элементы списка будут добавлены в новой строке в выходном файле.
Вот пример программы на Python для вашей справки:
MyList = ["Самара", "Сочи", "Мурманск", "Анапа"] MyFile = open ('output.txt', 'w')
for element in MyList: print >>MyFile, element MyFile.close()
Файл output.txt открывается в режиме записи. Цикл for в python повторяется для каждого элемента в списке. Команды печати записывают элемент в открытый файл.
Если вы используете команду cat для отображения содержимого выходного файла , это будет так:
Самара
Сочи
Мурманск
Анапа
Как видите, элементы списка записывались построчно в выходной файл.
В примерах файл был открыт в режиме записи с опцией ‘w’. Все предыдущее содержимое файла в этом режиме будет перезаписано.
Если вы хотите сохранить предыдущее содержимое файла, вы можете открыть файл в режиме добавления, используя опцию «a» вместо «w».
Способ 2: записать список в файл, используя функцию записи в Python
Теперь давайте посмотрим, как можно сохранить список в файл на Python. Мы собираемся использовать функцию Write().
Функция write() принимает строку в качестве аргумента. Итак, мы снова будем использовать цикл for для итерации каждого элемента в списке и записи его в файл.
Вот пример программы на Python:
MyList = ["Самара", "Сочи", "Мурманск", "Анапа"] MyFile=open('output.txt', 'w')
for element in MyList: MyFile.write(element) MyFile.write('\n') MyFile.close()
Обратите внимание, что элементы в списке не имеют символа новой строки. Вот почему мы добавляем символ новой строки ‘\ n’ после каждой итерации, чтобы элементы списка записывались в файл построчно. Если вы этого не сделаете, вы увидите все содержимое списка в одной строке.
Способ 3: записать все строки в файл одновременно, используя функцию writelines()
Два других метода, которые мы видели, записывали содержимое списка в файл построчно. Метод writelines() отличается. Этот метод принимает список в качестве входных данных и записывает список как есть в открытый файл.
Вот простая программа:
MyList = ["Самара", "Сочи", "Мурманск", "Анапа"] MyFile = open ('output.txt', 'w') MyFile.writelines (MyList) MyFile.close ()
Если вы используете команду для просмотра файла в командной строке Linux , вот что вы увидите в выводе:
Это не самый красивый вывод. Но это точное содержание списка.
Если вы хотите печатать построчно текст в файл с помощью функции writelines, вы все равно можете это сделать, но вам придется приложить дополнительные усилия.
Здесь вы можете изменить сам список и добавить символ новой строки после каждого элемента. И теперь, если вы напечатаете список с помощью writelines(), вы получите вывод построчно.
Вот пример программы для этого:
MyList = ["Самара", "Сочи", "Мурманск", "Анапа"] MyFile = open ('output.txt', 'w') MyList = map (lambda x: x + '\ n', MyList) MyFile.writelines (MyList) MyFile.close ()
Мы надеемся, что этот быстрый небольшой совет помог вам в написании списка в файл, используя Python. Если вы используете другой способ, поделитесь им с нами. Если статья помогла вам, пожалуйста, дайте нам знать, оставив комментарий ниже.
Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.
