5 крутых вещей, которые можно сделать с помощью Python

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

Введение

Python – очень популярный язык среди разработчиков. На нем легко и весело писать скрипты для автоматизации и создания различных вещей. К числу распространенных вариантов использования относятся:

  • Создание ботов
  • Скраппинг веб-сайтов
  • Машинное обучение, визуализация и анализ данных
  • Веб-разработка с использованием таких фреймворков, как Django и Flask
  • Разработка игр с помощью Pygame
  • Мобильные приложения с помощью фреймворков, таких как Kivy

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

Для веб-разработки

Python очень хорошо поддерживает веб-разработку благодаря таким фреймворкам, как Django, Flask и другим. Он может использоваться для создания серверных веб-приложений и может быть интегрирован с любым фронтендом. Как правило, разработчики используют JavaScript во фронтенде и python для поддержки операций на стороне сервера. Python не используется непосредственно в браузерах. Django – один из самых популярных веб-фреймворков на языке python. Эти фреймворки предоставляют пакет, в котором есть определенная структура, поддерживается взаимодействие с базами данных; все это настраивается с помощью минимальной команды setup. Если вам нужно что-то минимальное для начала – я рекомендую Flask! Кроме них, в Python есть большое количество библиотек для веб-разработки. Некоторые популярные из них –

  • Requests
  • Pillow
  • PyMongo

Некоторые ресурсы для начала веб-разработки на Python –

  • Образовательный блог
  • Веб-приложение с нуля

Пример – доступ к файловой системе компьютера с мобильного

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

# python version >=  3.X
python3 -m http.server

# If Python version >= 2.X and < 3.X
python -m SimpleHTTPServer
#default port: 8000

Это запускает файловый сервер, доступ к которому можно получить в той же сети. Чтобы получить доступ к файлам на мобильном телефоне, просто подключитесь к той же сети (Wi-Fi или используйте точку доступа телефона на ноутбуке). Теперь в браузере телефона откройте –

<your-computer-ip>:port

Проверьте свой IP, выполнив команду ifconfig. Проверьте свой локальный IP (должен начинаться с 192.168….) Предположим, ваш IP – 192.168.43.155, и вы используете порт по умолчанию. Тогда вам следует открыть –

192.168.43.155:8000 на мобильном. Вы увидите текущую директорию 🙂 .

Автоматизация и сценарии

Если вы инженер, то, скорее всего, вам будет лень и вы захотите автоматизировать почти все, что только можно, верно? Не волнуйтесь, python поможет вам. Существует масса вещей, которые можно автоматизировать всего 4-5 строками кода: от установки заданий cron и напоминаний до загрузки любимых видео на youtube – все это можно сделать с помощью пары строк на python.

Пример – Преобразование CSV в JSON

Вы можете преобразовать CSV-файл в JSON с помощью всего одной команды на языке python! Попробуйте прямо сейчас –

python -c "import csv,json;print json.dumps(list(csv.reader(open('your_csv_file.csv'))))"

Замените его на файл filename.csv, и вы получите результат в формате JSON! Легко, правда?

Строительные игры

Python поддерживает разработку игр. Его библиотека Pygame очень полезна. С ее помощью можно создавать художественные, музыкальные, звуковые, видео- и мультимедийные проекты. Вы даже можете создавать кроссплатформенные игры с помощью Kivy, которая работает на Windows, Mac, Linux, Android и iOS.

Пример – Виселица в терминале

Вот простая программа на python, которая позволяет играть в палач в терминале. Код можно значительно сократить, и я оставляю это на ваше усмотрение!

# hangman.py
#importing the time module
import time
import random

turns = 10

print "Hello, Let's play hangman! You will have " + str(turns) + " turns!"

print ""

# delay
time.sleep(0.5)

# set of words to guess from
wordList = ["geekflare", "awesome", "python", "magic"]
word = random.choice(wordList)

guesses = ''

# loop till no turns are remaining
while turns > 0:         
    wrong = 0             

    for char in word:      
        if char in guesses:    
            print char,    
        else:
            print "_",     
            wrong += 1    

    print("n")

    if wrong == 0:        
        print "You won :)"  

        break              

    print

    guess = ''
    if len(guess) < 1:
        guess = raw_input("Guess a character or enter the correct word: ")[0]

    guesses += guess                    

    if guess not in word:  
        turns -= 1        
 
        print "Wrong"    
 
        print "You have", + turns, ' turns left!' 
 
        if turns == 0:           
    
            print "You Lose :("

Выходные данные будут выглядеть примерно так –

Веб-скраппинг

Каждый день вы видите множество данных на разных сайтах. Подумайте, как было бы здорово, если бы вы могли легко получить доступ к этим данным. Это и есть веб-скреппинг, а python делает его еще проще благодаря своей удивительной поддержке и библиотекам. Данные в Интернете неструктурированы, и python обеспечивает простой способ анализа и потребления этих данных и даже дальнейшего анализа и операций. Позвольте мне показать вам пример того, как вы можете взять значения валют с сайта – x-rates.com.

Пример – Получение значения валюты в сравнении с USD

Давайте воспользуемся скраппингом в python, чтобы получить значения валют –

import requests 
from bs4 import BeautifulSoup 
  
URL = "https://www.x-rates.com/table/?from=USD&amount=1"
r = requests.get(URL) 

soup = BeautifulSoup(r.content, 'html.parser') 
ratelist = soup.findAll("table", {"class": "ratesTable"})[0].findAll("tbody")

for tableVal in ratelist:
	trList = tableVal.findAll('tr')
	for trVal in trList[:6]:
		print(trVal.text)

Это показывает, сколько стоит 1 доллар США в других валютах.

Наука о данных и машинное обучение

DS и ML – самые модные темы в наши дни. Эти технологии – будущее компьютерной науки. Python хорошо подходит для манипулирования данными, анализа и реализации сложных алгоритмов. Разбор и визуализация данных обычно представляют собой простые функции или несколько строк кода с помощью таких библиотек Python, как NumPy, scipy, scikit-learn и т. д. Python можно использовать в приложениях для работы с большими объемами данных и машинного обучения, используя множество популярных библиотек, таких как…

  • NumPy
  • Pandas
  • Matplotlib
  • Seaborn

Существует множество инструментов глубокого обучения, поддерживающих python. Некоторые популярные библиотеки и фреймворки – это

  • TensorFlow
  • PyTorch
  • Keras

Одна из других причин использования python заключается в том, что даже сложные модели машинного обучения могут быть реализованы с помощью 20-40 строк кода.

Заключение

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