- •27. Типы данных и строки Python Mobile, примеры.
- •28. Списки и кортежи Python Mobile, примеры.
- •29. Управляющие конструкции Python Mobile, примеры.
- •30. Функции Python Mobile, определение, вызов.
- •32. Модули в Python. Разработка пользовательского интерфейса в Python Mobile. Диалоговые функции note, popup_menu, примеры использования. Note(text[, type[, global] ]
- •33. Модули в Python. Разработка пользовательского интерфейса в Python Mobile. Диалоговые функции query, multi_query, selection_list, примеры использования.
- •34. Структура пользовательского интерфейса мобильного приложения для s60, объект app, атрибуты body, title, menu, примеры использования.
- •35. Структура пользовательского интерфейса мобильного приложения для s60, объект app, атрибуты screen, exit_key_handler(), примеры использования.
- •In_emulator()
- •Is_ui_thread()
- •Inactivity()
- •39.Работа с файлами в Python Mobile, объект File, примеры использования.
- •40.Чтение и запись текста в Python Mobile, примеры. Чтение и запись текста
- •41. Чтение и запись в файл указанных значений в Python Mobile, примеры.
- •42. Создание локальных баз данных средствами Python Mobile, примеры.
39.Работа с файлами в Python Mobile, объект File, примеры использования.
Объект File
В Python, файлы считываются и записываются через объект File. Создание объекта File открывает файл, либо для чтения или записи.
Объект File предоставляет различные функции для доступа к данным в открытом файле. Объект File включает в себя курсора, который указывает на определенное место файла. Каждый раз, когда вы читаете или записываете данных в файл, курсор перемещается соответственно.
Концептуально, курсор в объекте File работает так же, курсор в текстовом редакторе.
Пример. Вот простой пример, который открывает файл, записывает строку его и читает строки из файла. После того как вы выполнили скрипт вы должны увидеть новый файл C: \ Python \ test.txt, на вашем мобильном устройстве.
>>>import os
>>>f = file(u"c:\\python\\test.txt", "w+")# файл открыт на запись, если #до этого файл не существовал, он будет создан для #записи
>>>print >> f, "Hello!!!" #запись в файл текста Hello!!!
>>>f.seek(0) #перевод курсора в начало файла
>>>print "File says:", f.read()
>>>f.close()
Первая строка открывает файл. Имя файла должно быть указано в виде строки Unicode.
Обратите внимание, что поскольку знак «\» является управляющим символом Python, то в рассматриваемой инструкции он должен быть удвоен.
Самый простой способ, чтобы написать что-нибудь в файл, это использовать оператор печати «>>».
print >> f, "Hello!!!"
Оператор печати всегда выполняет перевод на новую строку. Если вы хотите избежать этого, можно использовать функцию Write () объекта File. В приведенном выше примере, мы могли бы написать:
f.write("Hello!!!")
Чтобы прочитать созданный файл, файл курсор должен быть повторно вернуться к началу. Функция seek() выполняет эту работу. Значение "0" указывает, что курсор перепозиционируется.
40.Чтение и запись текста в Python Mobile, примеры. Чтение и запись текста
Если вам необходимо прочитать только одну строку из файла можно воспользоваться функцией read(). Одного ее вызова будет достаточно, так как он читает весь файл сразу.
Но что, если вам необходимо прочитать список строк вместо этого?
Пример ниже показывает, как это сделать. Этот сценарий при выполнении должен распечатать содержимое списка test_list.
>>>def save_list(filename, list):
... f = file(filename, "w") # файл открыт на запись
... for item in list: # пока значения переменной item принадлежат #списку list выполнять заполнение ими файла f
... print >> f, item
... f.close()
>>>def load_list(filename):
... f = file(filename, "r")# файл открыт на чтение
... lst = [] # создаем пустой список
... for line in f:
... lst.append(line.strip()) # заполняем пустой список lst #считывая построчно содержимое файла, функция #append()добавляет элемент считанное в конец списка
... f.close()
... return lst
>>>test_list = ["first line", "second line", "that's all"]# определяем список
>>>save_list(u"c:\\python\\test.txt", test_list)
>>>print load_list(u"c:\\python\\test.txt")
["first line", "second line", "that's all"]
>>>
Список, считанный из файла идентичен первоначальному списку test_list.
Пользовательская функция save_list() записывает каждый элемент данного списка (ее аргумент list) в файл.
Функция load_list() читает содержимое файла, чтение линии в момент времени в цикле, и добавляет каждую строку в списке lst.
Обратите внимание, что мы используем функцию strip() для удаления идущих в начале и в конце символов пропуска из строк, которые считываются из файла. Функция strip() работает так:
>>> text = ‘ string ’
>>> text.strip()
‘string‘
>>>
