Python. Начало.
Python — это язык программирования, который широко используется для научных расчетов и систем искусственного интеллекта.
В составе Python поставляется много собранных и переносимых функциональных возможностей, известных как стандартная библиотека. Эта библиотека предоставляет Вам массу возможностей, востребованных в прикладных программах, начиная от поиска текста по шаблону и заканчивая сетевыми функциями. Python допускает расширение как за счёт ваших собственных библиотек, так и за счёт библиотек, созданных другими разработчиками.
Где используется Python?
- Компания Google использует Python в своей поисковой системе и оплачивает труд создателя Python — Гвидо ван Россума
- Такие компании, как Intel, Cisco, Hewlett-Packard, Seagate, Qualcomm и IBM, используют Python для тестирования аппаратного обеспечения
- Служба коллективного использования видеоматериалов YouTube в значительной степени реализована на Python
- NSA использует Python для шифрования и анализа разведданных
- Компании JPMorgan Chase, UBS, Getco и Citadel применяют Python для прогнозирования финансового рынка
- Популярная программа BitTorrent для обмена файлами в пиринговых сетях написана на языке Python
- Популярный веб-фреймворк App Engine от компании Google использует Python в качестве прикладного языка программирования
- NASA, Los Alamos, JPL и Fermilab используют Python для научных вычислений.
В этой статье я познакомлю вас c самыми азами этого языка. Итак, сначала надо скачать идешку, можно отсюда: https://www.python.org/downloads. Качаем, ставим, запускаем. Открывается такая от форма:
Команды языка Python можно вводить непосредственно в консоли:
Саму программу можно написать либо во встроенном, либо в каком-то ином редакторе (да хоть в блокноте). Открывается встроенный редактор через «File -> Open» если вы открываете существующий файл, или через «File -> New File» если хотите создать новый файл. Запускаем через «Run -> Run module»:
Существуют, конечно, и более продвинутые идеешки, например, Visual Studio 2015, в котором Python еще и .NET (дот нэт) поддерживает. Но для обучения хватит и этого простого интерпретатора.
Теперь попробуем написать простейшее консольное приложение:
print ('Как Вас зовут?') # Выводит текст name = input () # Запрашивает данные у пользователя и забивает в ячейку 'name' print ('Отлично, ' + name +', теперь напишите в каком городе Вы проживаете?') # Выводит текст и применяет содержимое ячейки 'name' city = input () # Запрашивает данные у пользователя и забивает в ячейку 'city' print ('Теперь давайте узнаем, сколько Вам лет?') # Выводит текст year = input() # Запрашивает данные у пользователя и забивает в ячейку 'year' print ('Ваше Имя: ' + name +'. Вы живете: В ' + city +'. Вам ' + year + ' лет') # Выводит текст и применяет содержимое ячеек 'name' , 'city' , 'year' end = input ('Что бы закрыть окно, достаточно нажать кнопку Enter на Вашей клавиатуре') # Запрашивает данные у пользователя и забивает в ячейку 'end' (При вводе любых значений, даже пустого, программа закрывается)
Вот скриншот работы данной программы:
А теперь пример полноценной программы с GUI, она будет у нас решать квадратные уравнения:
from math import sqrt from tkinter import * def solver(a,b,c): """ Решает квадратное уравнение и выводит отформатированный ответ """ # находим дискриминант D = b*b - 4*a*c if D >= 0: x1 = (-b + sqrt(D)) / (2*a) x2 = (-b - sqrt(D)) / (2*a) text = "The discriminant is: %s \n X1 is: %s \n X2 is: %s \n" % (D, x1, x2) else: text = "The discriminant is: %s \n This equation has no solutions" % D return text def inserter(value): """ Inserts specified value into text widget """ output.delete("0.0","end") output.insert("0.0",value) def handler(): """ Get the content of entries and passes result to the output area """ try: # make sure that we entered correct values a_val = float(a.get()) b_val = float(b.get()) c_val = float(c.get()) inserter(solver(a_val, b_val, c_val)) except ValueError: inserter("Make sure you entered 3 numbers") # родительский элемент root = Tk() # устанавливаем название окна root.title("Quadratic calculator") # устанавливаем минимальный размер окна root.minsize(325,230) # выключаем возможность изменять окно root.resizable(width=False, height=False) # создаем рабочую область frame = Frame(root) frame.grid() # поле для ввода первого аргумента уравнения (a) a = Entry(frame, width=3) a.grid(row=1,column=1,padx=(10,0)) # текст после первого аргумента a_lab = Label(frame, text="x**2+").grid(row=1,column=2) # поле для ввода второго аргумента уравнения (b) b = Entry(frame, width=3) b.grid(row=1,column=3) # текст после второго аргумента b_lab = Label(frame, text="x+").grid(row=1, column=4) # поле для ввода третьего аргумента уравнения (с) c = Entry(frame, width=3) c.grid(row=1, column=5) # текст после третьего аргумента c_lab = Label(frame, text="= 0").grid(row=1, column=6) # кнопка решить but = Button(frame, text="Solve", command=handler).grid(row=1, column=7, padx=(10,0)) # место для вывода решения уравнения output = Text(frame, bg="lightblue", font="Arial 12", width=35, height=10) output.grid(row=2, columnspan=8) # запускаем главное окно root.mainloop()
При запуске программы увидим графическое окно, куда можно ввести исходные данные и получить ответ:
В заключении, несколько особенностей языка Python, о которых следует знать:
- Точка с запятой, в отличии от, например, C#, Pascal или 1С в конце НЕ ставится;
- Нет операторных скобках, таких как {} в C-подобых языках или begin…end в Pascal-е, вместо них используется форматирование, то есть ВАЖНО, сколько символов табуляции или пробелов вы отступили от начала строки — это уже вопрос не культуры оформления кода, а вопрос синтаксиса;
- В языке динамическая типизация, то есть, тип переменой не задается жестко, как в Pascal-е, а может меняться во время выполнения программы;
На этом вводная статья окончена, но продолжение следует.
Comments
So empty here ... leave a comment!