Сообщение на тему программирование в современном мире

Цели урока цели

В этом уроке вы узнаете. Как манипулировать текстовыми файлами с помощью Python. Это включает в себя открытие, закрытие. Чтение и запись .txtфайлов с помощью программирования. Следующие несколько уроков этой серии будут включать в себя загрузку веб-страницы из Интернета и реорганизацию ее содержимого в полезные фрагменты информации. Вы будете выполнять большую часть своей работы. Используя код Python. Написанный и выполненный в Komodo Edit.

Работа с текстовыми файлами

Python позволяет легко работать с файлами и текстом. Давайте начнем с файлов.

Создание и запись в текстовый файл

Давайте начнем с краткого обсуждения терминологии. В предыдущем уроке (в зависимости от вашей операционной системы: установка Mac, Установка Windowsили Установка Linux) вы видели . Как отправить информацию в окно “Вывод команд” вашего текстового редактора с помощью команды print Python.

print('hello world') 

Язык программирования Python является объектно-ориентированным. Это означает. Что она построена вокруг особого вида сущности , объекта, который содержит как данные, так и ряд методов для доступа к этим данным и их изменения. Как только объект создан. Он может взаимодействовать с другими объектами.

В приведенном выше примере мы видим один вид объекта, строку “hello world”. Строка — это последовательность символов. Заключенных в кавычки. Вы можете написать строку одним из трех способов:

message1 = 'hello world' message2 = "hello world" message3 = """hello hello hello world""" 

Важно отметить. Что в первых двух примерах вы можете использовать одинарные или двойные кавычки / инвертированные запятые. Но вы не можете смешать их в одной строке.

Например, все следующее неверно:

message1 = "hello world' message2 = 'hello world" message3 = 'I can't eat pickles' 

Подсчитайте количество одинарных кавычек в сообщении 3.

Для того. Чтобы это сработало. Вам нужно было бы избежать апострофа:

message3 = 'I can\'t eat pickles' 

Или перепишите фразу как:

message3 = "I can't eat pickles" 

В третьем примере тройные кавычки означают строку. Которая охватывает более одной строки.

Print это команда. Которая печатает объекты в текстовой форме. Команда print в сочетании со строкой создает инструкцию.

Вы будете использовать printэто в тех случаях. Когда вы хотите создать информацию. Которая должна быть немедленно обработана. Иногда, однако. Вы будете создавать информацию. Которую вы хотите сохранить. Отправить кому-то другому или использовать в качестве входных данных для дальнейшей обработки другой программой или набором программ.

В этих случаях вы захотите отправить информацию в файлы на жестком диске. А не на панель “Вывод команд”. Введите следующую программу в текстовый редактор и сохраните ее как file-output.py.

# file-output.py f = open('helloworld.txt','wb') f.write('hello world') f.close() 

В Python любая строка. Начинающаяся с хэш-знака ( # ). Называется комментарием и игнорируется интерпретатором Python. Комментарии предназначены для того. Чтобы позволить программистам общаться друг с другом (или напоминать себе о том. Что делает их код. Когда они садятся за него несколько месяцев спустя).

В более широком смысле сами программы обычно пишутся и форматируются таким образом. Чтобы программистам было легче общаться друг с другом. Код , который ближе к требованиям машины. Называется низкоуровневым, тогда как код. Который ближе к естественному языку,-высокоуровневым. Одним из преимуществ использования такого языка , как Python. Является то. Что он является очень высоким уровнем. Что облегчает нам общение с вами (при некоторых затратах с точки зрения вычислительной эффективности).

В этой программе fфайловый объект, а open, writeиcloseфайловые методы. Другими словами, откройте. Напишите и закройте что-то для объекта f, который в этом случае определяется как a .txt файл. Это, вероятно. Другое использование термина “метод”. Чем вы могли бы ожидать. И время от времени вы обнаружите, что слова. Используемые в контексте программирования. Имеют немного (или полностью) другие значения. Чем в повседневной речи. В этом случае вспомним. Что методы-это биты кода. Которые выполняют действия. Они что-то делают с чем-то другим и возвращают результат.

Вы можете попытаться представить себе это на реальном примере, например. Давая команды семейной собаке. Собака (объект) понимает команды (т. е. Мы будем обсудите и узнайте. Как использовать многие другие методы по ходу дела.

f — это имя переменной. Выбранное нами; вы могли бы назвать его как угодно. В Python имена переменных могут быть сделаны из прописных и строчных букв. Цифр и символов подчеркивания…но вы не можете использовать имена команд Python в качестве переменных. Например, если вы попытаетесь назвать переменную файла “print”. Ваша программа не будет работать. Потому что это зарезервированное слово, которое является частью языка программирования.

Имена переменных Python также чувствительны к регистру, что означает, что foobar. Foobar и FOOBAR будут разными переменными.

Когда вы запустите эту программу, openметод попросит ваш компьютер создать новый текстовый файл helloworld.txtв той же папке. В которой вы сохранили file-output.pyпрограмму. Параметр wb говорит о том. Что вы собираетесь записать содержимое в этот новый файл с помощью Python.

Обратите внимание, что. Поскольку и имя файла. И параметр окружены одинарными кавычками, вы знаете. Что они оба хранятся в виде строк; забывание включить кавычки приведет к сбою программы.

В следующей строке ваша программа записывает сообщение “hello world” (другая строка) в файл и затем закрывает его. (Дополнительные сведения об этих операторах см. в разделе о файловых объектах в Справочнике по библиотеке Python.)

Дважды щелкните на кнопке “Run Python” в Komodo Edit. Чтобы выполнить программу (или эквивалент в любом текстовом редакторе. Который вы решили использовать: например. Нажмите на “#!” и “Run” в TextWrangler). Хотя ничего не будет напечатано на панели “Вывод команды”. Вы увидите сообщение о состоянии. Которое говорит что-то вроде

`/usr/bin/python file-output.py` returned 0. 

в Mac или Linux, или

'C:\Python27\Python.exe file-output.py' returned 0. 

в окнах.

Это означает. Что ваша программа успешно выполнена. Если вы используете в своем редакторе Komodo Edit. Вы можете открыть этот файл helloworld.txt. Он должен содержать ваше однострочное сообщение:

Hello World! 

Поскольку текстовые файлы содержат минимальное количество информации о форматировании. Они имеют тенденцию быть небольшими. Легко обмениваемыми между различными платформами (например. От Windows до Linux или Mac или наоборот) и легко передаваемыми из одной компьютерной программы в другую.

Обычно их также могут читать люди. Использующие текстовый редактор типа Komodo Edit.

Чтение из текстового файла

Python также имеет методы. Которые позволяют получать информацию из файлов. Введите следующую программу в текстовый редактор и сохраните ее как file-input.py. Когда вы нажмете кнопку “Выполнить”. Чтобы выполнить его. Он откроет только что созданный текстовый файл. Прочитает однострочное сообщение из него и распечатает сообщение на панели “Вывод команды”.

# file-input.py f = open('helloworld.txt','r') message = f.read() print(message) f.close() 

В этом случае параметр r используется для указания того. Что вы открываете файл в read от него. Параметры позволяют выбирать из различных вариантов. Которые позволяет конкретный метод. Возвращаясь к примеру с семейной собакой, собаку можно научить лаять один раз, когда она получает закуску со вкусом говядины , и два раза. Когда она получает закуску со вкусом курицы. Вкус закуски является параметром. Каждый метод отличается с точки зрения того. Какие параметры он будет принимать. Вы не можете, например. Попросить собаку спеть итальянскую оперу – если только ваша собака не особенно талантлива. Вы можете посмотреть возможные параметры для конкретного метода на веб-сайте Python. часто вы можете найти их. Набрав этот метод в поисковой системе вместе с “Python”.

Read это еще один файловый метод. Содержимое файла (однострочное сообщение) копируется в сообщение, которое мы решили назвать этой строкой. А затем printкоманда используется для отправки содержимого сообщения на панель “Вывод команды”.

Добавление к уже существующему текстовому файлу

Третий вариант — открыть уже существующий файл и добавить к нему еще один. Обратите внимание. Что если вы openсоздадите файл и воспользуетесь этим writeметодом, то программа перезапишет все. Что могло содержаться в файле. Это не проблема. Когда вы создаете новый файл или хотите перезаписать содержимое существующего файла. Но это может быть нежелательно при создании журнала событий или компиляции большого набора данных в один файл. Итак, вместо writeэтого вам захочется воспользоваться appendметодом. Обозначенным по a.

Введите следующую программу в текстовый редактор и сохраните ее как file-append.py. При запуске этой программы он откроет тот же helloworld.txtфайл. Созданный ранее. И добавит в файл второй “hello world”. Буква

# file-append.py f = open('helloworld.txt','a') f.write('\n' + 'hello world') f.close() 

После запуска программы откройте helloworld.txtфайл и посмотрите . Что произошло. Закройте текстовый файл и повторите его еще file-append.pyнесколько раз. Когда вы откроете helloworld.txtснова. Вы должны заметить несколько дополнительных сообщений

В следующем разделе мы обсудим модульность и повторное использование кода.

Предлагаемые показания