20 самых лучших сайтов для изучения python

Резюме по инструментам ГИП¶

Другие варианты можно найти на wiki-странице GuiProgramming официального
сайта Python.

К сожалению, не существует некоего единого стандартного инструмента для создания
графических программ на Python. Я бы рекомендовал выбирать один из инструментов,
описанных выше, наиболее подходящий для конкретной ситуации. Во-первых,
определитесь, согласны ли вы платить за использование этого инструмента.
Во-вторых, определитесь, на каких платформах должна работать ваша программа:
только на Windows, на Mac и GNU/Linux или на всех сразу. И в-третьих, если вы
выбрали платформу GNU/Linux, то в какой среде вы работаете: в KDE или GNOME.

Управляющие последовательности¶

Попробуйте ответить на вопрос: Как указать строку, содержащую одинарную кавычку
()? Например, строку “”. Её ведь нельзя записать
просто как “”, потому что тогда Python не сможет
определить, где начало строки, и где конец. В таком случае придётся каким-то
образом указать, что данная одинарная кавычка не обозначает конца строки. Это
можно сделать при помощи так называемой управляющей последовательности.
Укажите одинарную кавычку как – через обратную косую черту. Теперь наша
строка будет выглядеть так: .

Другой способ записи такой специфической строки – , т.е.
с использованием двойных кавычек. Аналогично следует использовать управляющую
последовательность для вставки двойной кавычки в строку, ограниченную двойными
кавычками. Сама же обратная наклонная черта указывается управляющей
последовательностью .

А как записать двустрочную строку? Один из вариантов нам уже знаком – заключить
строку в тройные кавычки, как было показано . Но
есть и другой – использовать управляющую последовательность для символа
перевода строки . Например: “”.
Полезно знать ещё одну управляющую последовательность – табуляцию ().
Управляющих последовательностей существует намного больше, но здесь упомянуты
только наиболее важные.

Следует отметить, что одинарная наклонная черта в конце строки лишь указывает
на то, что продолжение идёт строкой ниже, но не вставляет перевода строки.
Например:

"Это первое предложение. \
Это второе предложение."

Установка в Windows¶

Посетите страницу http://www.python.org/download/ и загрузите последнюю версию.
Установка производится так же, как и для любых других программ для Windows.

Интересно, что большую часть загрузок производят именно пользователи Windows.
Конечно, это не даёт представления о полной картине, поскольку у большинства
пользователей GNU/Linux Python установлен в системе по умолчанию.

Командная строка DOS

Для использования Python из командной строки Windows, т.е. приглашения DOS,
необходимо установить должным образом переменную PATH.

Для Windows 2000, XP, 2003 , перейдите в “Панель управления” –> “Система”
–> “Дополнительно” –> “Переменные среды”. Нажмите на переменной с именем
в отделе “Системные переменные”, после этого выберите
“Редактировать” и допишите к концу того, что там уже есть
(проверьте, существует ли такой каталог, так как для более новых версий Python
он будет иметь другое имя). Конечно, укажите действительное имя каталога.

Для более старых версий Windows добавьте следующую строку в файл
: ‘‘ (без кавычек) и
перезапустите систему. Для Windows NT используйте файл .

Для Windows Vista:

  1. Нажмите кнопку “Пуск” и выберите “Панель управления”.
  2. Нажмите “Система”, справа вы увидите “Просмотр основных сведений о вашем
    компьютере”. Слева – список действий, последним из которых будет
    “Дополнительные параметры системы.” Нажмите её. Отобразится вкладка
    “Дополнительно” диалога параметров системы. Нажмите кнопку “Переменные
    среды” справа внизу.
  3. В нижнем поле под названием “Системные переменные” прокрутите до и
    нажмите кнопку “Редактировать”.
  4. Измените путь, как нужно.
  5. Перезапустите систему. Vista не обновляет системные пути до перезагрузки.

Для Windows 7:

  1. Щёлкните правой кнопкой мыши на значке “Компьютер” на рабочем столе и
    выберите “Свойства”; иначе – нажмите кнопку “Пуск” и выберите “Панель
    Управления” –> “Система и безопасность” –> “Система”. Нажмите
    “Дополнительные параметры системы” слева, а затем выберите вкладку
    “Дополнительно”. Внизу нажмите кнопку “Переменные среды” и в отделе
    “Системные переменные” найдите переменную , выберите её и нажмите
    “Редактировать”.
  2. Перейдите к концу строки в поле “Значение переменной” и допишите
    .
  3. Если значение переменной было , теперь оно примет
    вид
  4. Нажмите “Ok”, и всё. Перезагрузка не требуется.

Использование командной строки интерпретатора¶

Откройте окно терминала (как было описано в главе
Установка) и запустите интерпретатор Python, введя
команду и нажав .

Пользователи Windows могут запустить интерпретатор в командной строке, если
установили переменную надлежащим образом. Чтобы открыть командную
строку в Windows, зайдите в меню “Пуск” и нажмите “Выполнить…”. В появившемся
диалоговом окне введите “cmd” и нажмите ; теперь у вас будет всё
необходимое для начала работы с python в командной строке DOS.

Если вы используете IDLE, нажмите “Пуск” –> “Программы” –> “Python 3.0” –>
“IDLE (Python GUI)”.

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

Теперь введите и нажмите клавишу .
В результате должны появиться слова “Hello World”.

Вот пример того, что вы можете увидеть на экране, если будете использовать
компьютер с Mac OS X. Информация о версии Python может отличаться в зависимости
от компьютера, но часть, начинающаяся с приглашения (т.е. от и далее)
должна быть одинаковой на всех операционных системах.

$ python3
Python 3.3.0 (default, Oct 22 2012, 12:20:36)
[GCC 4.2.1 Compatible Apple Clang 4.0 ((tags/Apple/clang-421.0.60))] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> print('hello world')
hello world
>>>

Обратите внимание, что Python выдаёт результат работы строки немедленно! Вы
только что ввели одиночный “оператор” Python. используется для
того, чтобы (что неудивительно ) напечатать любое переданное в него
значение

В данном случае мы передали в него текст “Hello World”, который и был
напечатан на экране.

Задача¶

Перед нами стоит следующая задача: Составить программу, которая создаёт
резервные копии всех наших важных файлов.

Хотя задача и проста, информации явно недостаточно, чтобы приступать к её
решению. Необходим некоторый дополнительный анализ. Например, как мы
выберем, какие файлы необходимо копировать? Как их хранить? Где их
хранить?

После надлежащего анализа мы проектируем нашу программу. Мы создаём список,
описывающий то, как наша программа должна работать. В данном случае я создал
список того, как я себе представляю её работу. Когда вы проектируете
программу, у вас может получиться другой результат, поскольку каждый человек
представляет себе это по-своему, так что это в порядке вещей.

Установка в GNU/Linux и BSD¶

Если вы используете один из дистрибутивов GNU/Linux, таких как Ubuntu, Fedora,
OpenSUSE, Debian, CentOS или {ваш вариант}, или один из вариантов BSD, как
например, FreeBSD, то скорее всего, в вашей системе уже установлен Python.

Чтобы проверить, установлен ли Python на вашей машине с BSD или GNU/Linux,
откройте эмулятор терминала (например, или ) и
введите команду , как показано ниже.

$ python -V
Python 3.3.0

Примечание

– это приглашение командной строки. Оно может выглядеть по-разному
в зависимости от настроек вашей ОС, поэтому я буду обозначать приглашение
просто одним символом .

Если вы видите информацию о версии, как показано выше, значит Python у вас уже
установлен.

Если же вы получаете такое сообщение:

$ python -V
bash: Python: command not found

значит, Python у вас не установлен. Это маловероятно, но всё же возможно.

Примечание

Если у вас уже установлен Python 3.x, попробуйте python3 -V.

В этом случае у вас будут два варианта установки Python:

Дополнительные усовершенствования¶

Четвёртая версия – вполне удовлетворительный рабочий сценарий для большинства
пользователей, однако нет пределов совершенства. Например, в программу можно
добавить уровень подробности вывода, чтобы при указании параметра
“” она становилась более “разговорчивой”.

Ещё одним возможным улучшением была бы возможность передавать сценарию другие
файлы и каталоги прямо в командной строке. Эти имена можно получать из списка
и добавлять к нашему списку при помощи метода
класса .

Наиболее важным усовершенствованием было бы прекращение использования
для создания архивов, а применение вместо него встроенных
модулей или . Они являются частью стандартной библиотеки,
поэтому всегда доступны для использования без зависимости от внешней программы
zip на компьютере.

В приведённых примерах мы использовали способ с для создания
резервных копий исключительно в педагогических целях, чтобы пример был
достаточно прост для понимания любым читателем, но достаточно реален для того,
чтобы делать что-то полезное.

Кто читает “A Byte of Python”?¶

Вот что люди говорят о настоящей книге:

“Лучшее, что мне удалось найти – “A Byte of Python” – просто блестящая книга
для начинающих. Она хорошо написана, основные понятия доступно объясняются
на наглядных примерах.”

“Это лучший учебник для начинающих из всех, что я видел! Спасибо вам за ваш
труд.”

“Вы написали лучший учебник по Python из тех, что я встречал в Сети. Отличная
работа. Спасибо!”

“Превосходный вводный курс в программирование #Python для начинающих”

“Привет! Я из Доминиканской Республики. Меня зовут Павел. Недавно я прочитал
вашу книгу “A Byte of Python”, и нахожу её замечательной :). Я многому
научился на приведённых примерах. Ваша книга – отличный помощник таким
новичкам, как я…”

“Недавно я закончил читать “A Byte of Python” и подумал, что я обязательно
должен поблагодарить вас. Было грустно дойти до последних страниц, так как
это означало возвращение к тупым и скучным руководствам O’Reilly или чего-то
подобного для изучения Python. В любом случае я очень благодарен вам за вашу
книгу.”

“Уважаемый Swaroop, я прохожу курс, который ведёт преподаватель, совсем не
заинтересованный в преподавании. Мы пользуемся книгой “Изучаем Python”, второе
издание O’Reilly. Но она совсем не для начинающих студентов, практически без
каких-либо знаний о программировании, и преподавателя, который должен работать
кем-нибудь другим. Огромное спасибо вам за вашу книгу. Без неё я так бы никогда
ничего и не понял о Python и программировании вообще. Тысяча благодарностей! Вы
умеете “разбить мысль на части” до такого уровня, чтобы начинающим было легко
понять, а далеко не каждый на это способен.”

“Я в восторге от вашей книги! Это самый лучший учебник по Python, кроме того
полезный и как справочник. Просто блестяще! Настоящий шедевр! Так держать!”

“Пишу вам, чтобы поблагодарить за написание и публикацию в сети “A Byte of
Python”. Я предпринимал попытки изучить Python в течение нескольких месяцев,
прежде чем наткнулся на вашу книгу. И хотя я достиг небольших успехов с pyGame,
мне никак не удавалось закончить программу.

Благодаря вашему упрощению многих понятий, Python теперь кажется мне вполне
достижимой целью. Кажется, теперь я наконец-то освоил основы и могу продолжать
идти к своей настоящей цели – разработке игр.

Ещё раз спасибо ОГРОМНОЕ за размещение такого структурированного и полезного
путеводителя по основам программирования в Интернете. Он провёл меня через
ООП, разъяснив то, что не смогли разъяснить два учебника.”

“Я бы хотел поблагодарить вас за вашу книгу “A byte of python”, которая кажется
мне самым лучшим средством для изучения Python. Мне 15 лет, я живу в Египте.
Зовут меня Ахмед. Python – мой второй язык программирования. В школе я изучал
Visual Basic 6, но мне он не понравился, а изучать Python мне по-настоящему
нравится. Мне удалось написать программу “Адресная книга”. Теперь я буду больше
программировать сам и читать чужие программы на Python (если вы подскажете мне
подходящий их источник). Также я намерен приступить к изучению Java, и если бы
вы могли порекомендовать мне пособие по Java, столь же хорошее, как ваше, это
бы мне очень помогло. Спасибо.”

“Замечательным источником для начинающих, желающих узнать больше о Python
может послужить пособие “A Byte of Python”, написанное Swaroop C H в 110
страницах. Оно отлично написано, легко воспринимается и, возможно, это лучшее из
существующих введение в программирование на Python”

“Вчера я прошёл почти весь “Byte of Python” на своём Nokia N800, и он показался
мне наиболее лёгким и лаконичным введением в Python из всех, что я встречал.
Настоятельно рекомендую его как отправную точку для изучающих Python.”

“Byte of Vim и Python”, написанные @swaroopch, на мой взгляд, наилучшие образцы
технической документации. Прекрасно читаются #FeelGoodFactor

“”Byte of python” – безусловно лучший”

(в ответ на вопрос “Посоветуйте хороший и недорогой ресурс для изучения основ
Python.”)

“Книга “Byte of Python” очень помогла. Спасибо, bigtime :)”

“Всегда был поклонником “A Byte of Python” – написанного как для новичков,
так и для опытных программистов.”

Даже NASA

Учебные курсы

Объекты¶

Помните, Python рассматривает всё, что есть в программе, как объекты.
Имеется в виду, в самом общем смысле. Вместо того, чтобы говорить “нечто”, мы
говорим “объект”.

Замечание для программистов в объектно-ориентированном стиле

Python строго объектно ориентирован в том смысле, что объектом является всё,
включая числа, строки и функции.

Сейчас мы увидим, как использовать переменные наряду с константами. Сохраните
следующий пример и запустите программу.

Как писать программы на Python

Впредь стандартная процедура сохранения и запуска программы на Python будет
выглядеть так:

  1. Откройте ваш любимый редактор, например Komodo Edit.
  2. Введите текст программы из примера.
  3. Сохраните его в файл, указав его имя в комментарии. Я следую правилу
    сохранять все программы на Python с расширением .
  4. Запустите интерпретатор командой . Кроме того, вы
    можете сделать программу , как
    объяснялось ранее.

Выбор редактора¶

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

Прежде чем приступить к написанию программ на Python в файлах, нам нужен
редактор для работы с файлами программ. Выбор редактора крайне важен.
Подходить к выбору редактора следует так же, как и к выбору личного
автомобиля. Хороший редактор поможет вам легко писать программы на Python,
делая ваше путешествие более комфортным, а также позволяя быстрее и безопаснее
достичь вашей цели.

Одно из самых основных требований – это подсветка синтаксиса, когда
разные элементы программы на Python раскрашены так, чтобы вы могли легко
видеть вашу программу и ход её выполнения.

Если вы не знаете, с чего начать, я бы порекомендовал воспользоваться программой
Komodo Edit, которая
доступна для Windows, Mac OS X и GNU/Linux.

Если вы пользуетесь Windows, Не используйте Блокнот – это плохой выбор,
поскольку он не обладает функцией подсветки синтаксиса, а также не позволяет
автоматически вставлять отступы, что очень важно в нашем случае, как мы увидим
позже. Хорошие редакторы, как Komodo Edit, позволяют делать это автоматически

Опытные программисты, должно быть, уже используют Vim
или Emacs. Не стоит даже и говорить,
что это два наиболее мощных редактора, и вы только выиграете от их
использования для написания программ на Python. Лично я пользуюсь ими обоими
для большинства своих программ, и даже написал книгу о Vim.
Я настоятельно рекомендую вам решиться и потратить время на изучение Vim или
Emacs, поскольку это будет приносить вам пользу долгие годы. Однако, как я уже
писал выше, новички могут пока просто остановиться на Komodo Edit и
сосредоточиться на изучении Python, а не текстового редактора.

Я повторюсь ещё раз: обязательно выберите подходящий редактор – это сделает
написание программ на Python более простым и занимательным.

Для пользователей Vim

Для пользователей Emacs

Переменные класса и объекта¶

Функциональную часть классов и объектов (т.е. методы) мы обсудили, теперь
давайте ознакомимся с частью данных. Данные, т.е. поля, являются не чем иным,
как обычными переменными, заключёнными в пространствах имён классов и
объектов. Это означает, что их имена действительны только в контексте этих
классов или объектов. Отсюда и название “пространство имён”.

Существует два типа полей: переменные класса и переменные объекта, которые
различаются в зависимости от того, принадлежит ли переменная классу или
объекту соответственно.

Переменные класса разделяемы – доступ к ним могут получать все экземпляры
этого класса. Переменная класса существует только одна, поэтому когда любой
из объектов изменяет переменную класса, это изменение отразится и во всех
остальных экземплярах того же класса.

Переменные объекта принадлежат каждому отдельному экземпляру класса. В этом
случае у каждого объекта есть своя собственная копия поля, т.е. не разделяемая
и никоим образом не связанная с другими такими же полями в других экземплярах.
Это легко понять на примере (сохраните как ):

class Robot
    '''Представляет робота с именем.'''
    # Переменная класса, содержащая количество роботов
    population = 

    def __init__(self, name):
        '''Инициализация данных.'''
        self.name = name
        print('(Инициализация {0})'.format(self.name))

        # При создании этой личности, робот добавляется
        # к переменной 'population'
        Robot.population += 1

    def __del__(self):
        '''Я умираю.'''
        print('{0} уничтожается!'.format(self.name))

        Robot.population -= 1

        if Robot.population == 
            print('{0} был последним.'.format(self.name))
        else
            print('Осталось {0:d} работающих роботов.'.format(Robot.population))

    def sayHi(self):
        '''Приветствие робота.

        Да, они это могут.'''
        print('Приветствую! Мои хозяева называют меня {0}.'.format(self.name))

    def howMany():
        '''Выводит численность роботов.'''
        print('У нас {0:d} роботов.'.format(Robot.population))

    howMany = staticmethod(howMany)

droid1 = Robot('R2-D2')
droid1.sayHi()
Robot.howMany()

droid2 = Robot('C-3PO')
droid2.sayHi()
Robot.howMany()

print("\nЗдесь роботы могут проделать какую-то работу.\n")

print("Роботы закончили свою работу. Давайте уничтожим их.")
del droid1
del droid2

Robot.howMany()

Вывод:

$ python3 objvar.py
(Инициализация R2-D2)
Приветствую! Мои хозяева называют меня R2-D2.
У нас 1 роботов.
(Инициализация C-3PO)
Приветствую! Мои хозяева называют меня C-3PO.
У нас 2 роботов.

Здесь роботы могут проделать какую-то работу.

Роботы закончили свою работу. Давайте уничтожим их.
R2-D2 уничтожается!
Осталось 1 работающих роботов.
C-3PO уничтожается!
C-3PO был последним.
У нас 0 роботов.

Как это работает:

Мы могли достичь того же самого, используя
декораторы :

@staticmethod
def howMany():
    '''Выводит численность роботов.'''
    print('У нас {0:d} роботов.'.format(Robot.population))

Декораторы можно считать неким упрощённым способом вызова явного оператора,
как мы видели в этом примере.

Пронаблюдайте, как метод используется для инициализации экземпляра
с именем. В этом методе мы увеличиваем счётчик на 1,
так как добавляем ещё одного робота. Также заметьте, что значения
для каждого объекта свои, что указывает на природу переменных объекта.

Помните, что к переменным и методам самого объекта нужно обращаться, пользуясь
только . Это называется доступом к атрибутам.

В этом примере мы также наблюдали применение строк документации для классов,
равно как и для методов. Во время выполнения мы можем обращаться к строке
документации класса при помощи “”, а к строке документации
метода – при помощи “”.

Наряду с методом , существует и другой специальный метод
, который вызывается тогда, когда объект собирается умереть, т.е.
когда он больше не используется, и занимаемая им память возвращается
операционной системе для другого использования. В этом методе мы просто
уменьшаем счётчик на 1.

Метод запускается лишь тогда, когда объект перестаёт использоваться,
а поэтому заранее неизвестно, когда именно этот момент наступит. Чтобы
увидеть его в действии явно, придётся воспользоваться оператором , что
мы и сделали выше.

Строки¶

Строка – это последовательность символов. Чаще всего строки – это просто
некоторые наборы слов.

Слова могут быть как на английском языке, так и на любом другом, поддерживаемом
стандартом Unicode, что означает почти на любом языке мира.

Замечание для опытных программистов

В Python 3 нет ASCII-строк, потому что Unicode является надмножеством
(включает в себя) ASCII. Если необходимо получить строку строго в кодировке
ASCII, используйте . Подробнее смотрите в
.
По умолчанию все строки в Unicode.

Я могу с уверенностью сказать, что вы будете использовать строки почти в каждой
вашей программе на Python

Поэтому уделите внимание тому, как работать со
строками в Python

Одинарные кавычки

Строку можно указать, используя одинарные кавычки, как например, . Все пробелы и знаки табуляции сохранятся, как есть.

Тройные кавычки

Можно указывать “многострочные” строки с использованием тройных кавычек
( или ). В пределах тройных кавычек можно свободно использовать
одинарные и двойные кавычки. Например:

'''Это многострочная строка. Это её первая строка.
Это её вторая строка.
"What's your name?", - спросил я.
Он ответил: "Bond, James Bond."
'''

Строки неизменяемы

Это означает, что после создания строки её больше нельзя изменять. На первый
взгляд это может показаться недостатком, но на самом деле это не так.
Впоследствии на примере разных программ мы увидим, почему это не является
ограничением.

Объединение строковых констант

Если расположить рядом две строковых константы, Python автоматически их
объединит. Например, автоматически преобразуется в
.

Замечание для программистов на C/C++

В Python нет отдельного типа данных (символ). В нём нет нужды, и я
уверен, что вы не будете по нему скучать.

Замечание для программистов на Perl/PHP

Помните, что строки в двойных кавычках и в одинарных эквивалентны, и ничем
друг от друга не отличаются.

Отступы¶

В Python пробелы важны. Точнее, пробелы в начале строки важны. Это
называется отступами. Передние отступы (пробелы и табуляции) в начале
логической строки используются для определения уровня отступа логической строки,
который, в свою очередь, используется для группировки предложений.

Это означает, что предложения, идущие вместе, должны иметь одинаковый
отступ. Каждый такой набор предложений называется блоком. В дальнейших
главах мы увидим примеры того, насколько важны блоки.

Вы должны запомнить, что неправильные отступы могут приводить к возникновению
ошибок. Например:

i = 5
print(‘Значение составляет ‘, i) # Ошибка! Обратите внимание на первый пробел в начале строки
print(‘Я повторяю, значение составляет ‘, i)

Когда вы запустите это, вы получите следующую ошибку:

File «whitespace.py», line 4
print(‘Значение составляет ‘, i) # Ошибка! Обратите внимание на первый пробел в начале строки
^
IndentationError unexpected indent

Обратите внимание на то, что в начале второй строки есть один пробел. Ошибка,
отображённая Python, говорит нам о том, что синтаксис программы неверен, т.е.
программа не была написана по правилам

Для вас же это означает, что вы не
можете начинать новые блоки предложений где попало (кроме основного блока по
умолчанию, который используется на протяжении всей программы, конечно).
Случаи, в которых вы можете использовать новые блоки, будут подробно описаны в
дальнейших главах, как например, в главе “Поток команд”.

Как отступать

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

Выберите какой-нибудь один из этих стилей отступа

Но что ещё более важно,
это использовать выбранный стиль постоянно, а также соблюдать стиль
редактируемых вами файлов. Т.е

когда вы пишете новый файл, используйте
только один ваш любимый стиль, а если в редактируемом вами файле для
отступов уже используются, скажем, символы табуляции, то и вы используйте в
этом файле символы табуляции для отступов.

Хорошие редакторы, такие как Komodo Edit, будут делать это автоматически.

Free/Libre and Open Source Software (FLOSS) [1]¶

В основу идеи FLOSS положена концепция
сообщества, в котором принято делиться, и особенно делиться знаниями. Свободные
программы можно свободно использовать, изменять и распространять.

Если вы уже прочли эту книгу, то вы уже знакомы со свободным ПО, так как вы
изучали Python всё это время, а Python является свободным программным
обеспечением!

Вот несколько примеров свободного ПО, по которым можно составить некоторое
представление о том, что способно создать такое сообщество:

  • Linux. Это свободное ядро операционной системы, используемое, например,
    в операционной системе GNU/Linux. Разработку ядра “Linux” начал
    Линус Торвальдс ещё в свою бытность студентом.
  • GNU. Свободная операционная система, основанная Ричардом Столлманом в
    1983 году.
  • GNU/Linux. Сочетание операционной системы GNU с ядром “Linux”, в наше
    время серьёзный конкурент Microsoft Windows. В принципе, GNU/Linux является
    свободным программным обеспечением, но разные дистрибутивы GNU/Linux могут
    включать и несвободные программы.
    [Free GNU/Linux distributions]
  • Ubuntu. Это дистрибутив, разрабатываемый сообществом и спонсируемый
    фирмой Canonical. В настоящее время это, пожалуй, самый популярный
    дистрибутив GNU/Linux. Он позволяет легко устанавливать и использовать
    множество свободных программ. Больше того, он позволяет просто перезагрузить
    ваш компьютер и запустить GNU/Linux с CD! Это даёт возможность в полной мере
    опробовать новую операционную систему до установки на жёсткий диск. Однако,
    Ubuntu не полностью свободна, так как включает некоторые проприетарные
    драйверы, микрокод и приложения.
  • LibreOffice. Это превосходный офисный пакет, разрабатываемый сообществом
    и включающий в себя компоненты для создания текста, презентаций, электронных
    таблиц, рисунков и многого другого. Он также позволяет открывать и
    редактировать файлы MS Word и MS Powerpoint. Он работает практически на всех
    платформах и является полностью свободным и открытым программным обеспечением.
  • Mozilla Firefox. Это веб-браузер нового поколения, являющийся сильнейшим
    соперником Internet Explorer. Он огненно быстр, и заработал широкое признание
    своими удобными и впечатляющими возможностями. А концепция расширений
    позволяет дополнять его самыми разнообразными плагинами.
  • Его “напарник” Thunderbird – отличный клиент электронной почты,
    делающий её чтение чрезвычайно простым.
  • Mono. Это свободная реализация платформы Microsoft .NET. Она позволяет
    создавать и запускать .NET-приложения в GNU/Linux, Windows, FreeBSD, Mac OS
    и на многих других платформах. ,
    ,
  • Apache web server. Это популярный открытый веб-сервер. По сути, это
    самый популярный веб-сервер на планете. На нём работает более половины всех
    сайтов. Да, Apache действительно обслуживает больше сайтов, чем все остальные
    веб-серверы (включая Microsoft IIS) вместе взятые.
  • MySQL. Это чрезвычайно популярный открытый сервер баз данных. Он наиболее
    известен своей ошеломляющей скоростью. Это его обозначают буквой “M” в
    сочетании “LAMP”, на котором работает большинство сайтов в Интернете.
  • VLC Player. Это проигрыватель, который может воспроизводить всё, начиная
    от DivX и до MP3, до Ogg, до VCD, до DVD, до … и кто сказал, что это не
    забавно? 😉
  • GeexBox – дистрибутив GNU/Linux, созданный для проигрывания фильмов
    сразу после загрузки с CD!

Этот список предназначен только лишь для того, чтобы вкратце передать вам мысль,
на самом же деле существует ещё огромное множество свободного ПО, такого как
язык Perl, язык PHP, система управления содержимым веб-сайтов Drupal,
сервер баз данных PostgreSQL, игра TORCS, среда разработки KDevelop,
проигрыватель Xine, текстовый редактор VIM, редактор Quanta+, аудио-плеер
Banshee, графический редактор GIMP, … этот список можно продолжать вечно.

Чтобы отследить свежие слухи в мире свободного ПО, посетите следующие сайты:

  • linux.com
  • LinuxToday
  • NewsForge
  • DistroWatch

Узнать больше о свободном ПО можно на следующих сайтах:

  • SourceForge
  • FreshMeat

Примечания¶

debug – применительно к компьютерным программам обозначает
отладку (обнаружение
и устранение ошибок, которые при этом принято называть “bug”, т.е.
“жук”). По всей видимости, это
с
процедуры изгнания насекомых из схем больших ЭВМ, хотя само понятие “bug”
в смысле маленькой неисправности встречается и в более ранней литературе,
например, в записях Томаса Эдисона 1878 года. (прим. перев.)
source – англ. “источник” (прим.перев.)
Под словом “Unix” здесь подразумеваются все операционные системы,
построенные по принципам ОС Unix, а не только она сама по себе.
Примерами таких операционных систем являются все дистрибутивы GNU/Linux,
семейство ОС *BSD, Android, Solaris и т.д. (прим.перев.)
quietly – англ. “тихо” (прим.перев.)
recursive – англ. “рекурсивно” (прим.перев.)
raw – англ. “сырой”, “необработанный” (прим.перев)
bug fixing – устранение “багов”, исправление ошибок (прим.перев)
verbosity – англ. “многословность”. Применительно к компьютерным
программам обозначает степень подробности выводимых программой сообщений,
т.е. степень “разговорчивости” программы. Отсюда и название этого
параметра (прим.перев)

С чего начать?

Python считается одним из самых простых в изучении языков программирования, к тому же он чрезвычайно универсален. Вы можете использовать этот язык для чего угодно, от веб-разработки до разработки игр. Кроме того, изучив Python, вы в будущем с легкостью изучите и подобные ему языки, например, PHP или Ruby.

Лучший способ изучить что-либо — работать с предметом изучения. Языков программирования это касается в первую очередь. Следовательно, лучший способ начать изучение Python — выбрать урок или обучающий курс и погрузиться в него с головой.

Что касается изучения основ кодинга на Python, вы вполне можете справиться с этим самостоятельно. Нет никакой необходимости тратить тысячи долларов на получение специального образования или прохождение курсов программирования. А нужные навыки вы приобретете на практике, путем проб и ошибок.

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

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Adblock
detector