Архив метки: Python

Как использовать функцию NumPy unique() в Python

Библиотека NumPy используется в Python для создания одного или нескольких размерных массивов, и у нее есть много функций для работы с массивом. Функция unique() — одна из полезных функций этой библиотеки для определения уникальных значений массива и возврата отсортированных уникальных значений. Эта функция также может возвращать кортеж значений массива, массив ассоциативных индексов и количество раз, когда каждое уникальное значение появляется в основном массиве. В этом руководстве показаны различные варианты использования этой функции.

 

Синтаксис:

Синтаксис этой функции приведен ниже.

array numpy.unique(input_array, return_index, return_inverse, return_counts, axis)

Эта функция может принимать пять аргументов, назначение которых объясняется ниже.

  • input_array: это обязательный аргумент, который содержит входной массив, из которого выходной массив будет возвращен путем извлечения уникальных значений. Если массив не является одномерным массивом, то массив будет сглаженным.
  • return_index: это необязательный аргумент, который может принимать логическое значение. Если для этого аргумента установлено значение True, он вернет индексы входного массива.
  • return_inverse: это необязательный аргумент, который может принимать логическое значение. Если для этого аргумента установлено значение True, он вернет индексы выходного массива, который содержит уникальные значения.
  • return_counts: это необязательный аргумент, который может принимать логическое значение. Если для этого аргумента установлено значение True, он вернет количество раз, когда каждый элемент уникального массива появляется во входном массиве.
  • axis: это необязательный аргумент, который может принимать любое целочисленное значение или None. Если для этого аргумента не задано значение, входной массив будет сглажен.

Функция unique() может возвращать четыре типа массивов на основе значений аргументов.

 

Пример 1: Распечатать уникальные значения одномерного массива

В следующем примере показано использование функции unique() для создания массива с уникальными значениями одномерного массива. В качестве значения аргумента функции unique() используется одномерный массив из 9 элементов. Возвращенное значение этой функции напечатано позже.

# Импортировать библиотеку NumPy



import numpy as np



# Создать массив целого числа



np_array = np. unique ([55, 23, 40, 55, 35, 90, 23, 40, 80])



# Распечатать уникальные значения



print("Массив уникальных значений: n", np_array)

 

Выход :

Входной массив содержит 6 уникальных элементов, которые отображаются на выходе.

 

Пример 2: Распечатать уникальные значения и индексы на основе входного массива

В следующем примере показано, как можно получить уникальные значения и индексы двумерного массива с помощью функции unique(). В качестве входного массива используется двумерный массив из 2 строк и 6 столбцов. Для аргумента return_index установлено значение True, чтобы получить индексы входного массива на основе уникальных значений массива.

# Импортировать библиотеку NumPy



import numpy as np



# Создать двумерный массив



np_array = np. array([ [ 6, 4, 9, 6, 2, 9 ], [ 3, 7, 7, 6, 1, 3 ] ])



# Распечатать двумерный массив



print("Содержимое двумерного массива : n", np_array)



# Создайте уникальный массив и индексный массив уникальных значений



unique_array, index_array = np. unique(np_array, return_index = True)



# Распечатать значения уникального и индексного массивов



print("Содержимое уникального массива: n", unique_array)



print("Содержимое индексного массива: n", index_array)

 

Выход :

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

Пример 3: Распечатать уникальные значения и индексы на основе выходного массива

В следующем примере показано, как уникальные значения одномерного массива и индексы основаны на уникальных значениях с помощью функции unique (). В сценарии в качестве входного массива используется одномерный массив из 9 элементов. Значение аргумента return_inverse установлено в True, что вернет другой массив индексов на основе уникального индекса массива. И уникальный массив, и индексный массив напечатаны позже.

# Импортировать библиотеку NumPy



import numpy as np



# Создать массив целочисленных значений



np_array = np. array([ 10, 60, 30, 10, 20, 40, 60, 10, 20 ])



print("Значения входного массива: n", np_array)



# Создайте уникальный массив и обратный массив



unique_array, inverse_array = np.unique(np_array, return_inverse=True)



# Распечатать значения уникального массива и обратного массива



print("Значения уникального массива: n", unique_array)



print("Значения обратного массива: n", inverse_array)

 

Выход :

На выходе был показан входной массив, уникальный массив и обратный массив. Входной массив содержит 5 уникальных значений. Это 10, 20, 30, 40 и 60. Входной массив содержит 10 в трех индексах, которые являются первым элементом уникального массива. Итак, 0 появился в обратном массиве трижды. Остальные значения обратного массива были размещены таким же образом.

 

Пример 4: Распечатайте уникальные значения и частоту каждого уникального значения

В следующем примере показано, как функция unique () может получить уникальные значения и частоту каждого уникального значения входного массива. Значение аргумента return_counts было установлено в True для получения массива значений частоты. Одномерный массив из 12 элементов был использован в функции unique () в качестве входного массива. Массив уникальных значений и значения частоты были напечатаны позже.

# Импортировать библиотеку NumPy



import numpy as np



# Создать массив целочисленных значений



np_array = np. array([70, 40, 90, 50, 20, 90, 50, 20, 80, 10, 40, 30])



print("Значения входного массива: n", np_array)



# Создать уникальный массив и подсчитать массив



unique_array,count_array = np.unique(np_array, return_counts = True)



# Распечатать значения уникального массива и обратного массива



print("Значения уникального массива: n", unique_array)



print("Значения массива count: n", count_array)

Выход :

Входной массив, уникальный массив и массив счетчиков были напечатаны в выходных данных.

 

Заключение

Подробное использование функций unique() было объяснено в этом руководстве с использованием нескольких примеров. Эта функция может возвращать значения различных массивов, показанных здесь, с использованием одномерных и двумерных массивов.



2021-02-11T10:14:44
Python

Изучаем популярные библиотеки Python: книги 2019 года

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

Стандартная библиотека Python 3: справочник с примерами

Обложка книги "Стандартная библиотека Python 3: справочник с примерами"

Автор: Даг Хеллман. Язык: русский.

Автор книги, Даг Хеллман, имеет большой опыт работы с Python (еще с 1997 года). Увлечение этим языком подвигло его писать статьи для тематических изданий. Кроме того, Даг активно вел свой блог, где писал о самых используемых модулях Python. Эти статьи активно комментировались читателями и соответственно исправлялись и дополнялись. Переработав материал своих статей под Python 3, Даг выпустил книгу «Стандартная библиотека Python 3».

Описания модулей в книге сгруппированы по темам (текст, структуры данных, алгоритмы, дата и время, математика, файловая система, сжатие данных, криптография и т.д.). Каждое описание модуля сопровождается примером использования его в коде.

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

PyTorch Recipes

Обложка книги "PyTorch Recipes"

Автор: Pradeepta Mishra. Язык: английский.

Pradeepta Mishra занимается наукой о данных и созданием систем искусственного интеллекта на профессиональном уровне. Помимо «PyTorch Recipes», он также написал «R Data Mining Blueprints» и «R: Mining Spatial, Text, Web, and Social Media Data». По этим книгам созданы обучающие курсы на Udemy.

«PyTorch Recipes» предназначена для специалистов data science и разработчиков, занятых в сфере обработки естественного языка и искусственного интеллекта.

Читая эту книгу, вы познакомитесь с тензорами, вычислениями, осуществлением арифметических операций, линейной алгеброй и статистическими распределенными операциями. Естественно, все это разбирается с позиций применения фреймворка PyTorch.

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

По сути эта книга — практическое руководство. Как и заявлено в названии, это сборник конкретных рецептов применения PyTorch.

Знакомство с PyTorch

Авторы: Брайан Макмахан, Делип Рао. Язык: русский.

Книга посвящена обработке естественного языка и глубокому обучению. Ее цель — познакомить начинающих программистов с этими темами. Из-за ориентации на начинающих авторы сознательно избегали погружения в математические темы, чтобы не отвлекать читателей от главного.

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

Learn Keras for Deep Neural Networks

Обложка книги "Learn Keras for Deep Neural Networks"

Автор: Jojo Moolayil. Язык: английский.

Книга предназначена для быстрого ознакомления с темой глубокого обучения. Ее «целевая аудитория» — разработчики, владеющие любым современным языком программирования (не обязательно Python). Если вы уже немного разбираетесь в глубоком обучении и хотели бы изучить более продвинутые темы, такие как компьютерное зрение, распознавание речи и т. п., — эта книга вам не подойдет: она для новичков.

Читая эту книгу, вы научитесь проектировать, разрабатывать, тренировать, проверять и развертывать глубокие нейронные сети, используя открытую библиотеку Keras.

Beginning Anomaly Detection Using Python-Based Deep Learning

Обложка книги "Beginning Anomaly Detection Using Python-Based Deep Learning"

Авторы: Sridhar Alla, Suman Kalyan Adari. Язык: английский.

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

Для примеров в книге выбран Python — язык, широко применяемый в науке о данных и имеющий целый набор подходящих библиотек в своей экосистеме.

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

В дополнение к основному материалу книги авторы рассматривают Keras и PyTorch — самые популярные фреймворки Python в сфере глубокого обучения.

Numerical Python

Обложка книги "Numerical Python"

Автор: Robert Johansson. Язык: английский.

Robert Johansson — опытный питонист, имеющий докторскую степень по теоретической физике. Научными вычислениями (и теорией, и практикой) он занимается уже больше 10 лет.

В своей книге «Numerical Python» Роберт показал, как можно осуществлять научные вычисления, используя Python и его экосистему. Дело в том, что работа с научными и численными вычислениями требует знания как математики, так и программирования. Цель данной книги — перебросить мост между этими двумя направлениями.

Книга состоит из 19 глав, каждая из которых освещает разные аспекты научных вычислений. В привязке к каждой отдельной теме рассматриваются разные библиотеки Python: NumPy, SymPy, Matplotlib, SciPy, PyMC.

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

Mastering GUI Programming with Python

Обложка книги "Mastering GUI Programming with Python"

Автор: Alan D. Moore. Язык: английский.

Алан Мур — аналитик данных и разработчик ПО, работающий на Python с 2006 года. Свои приложения он создает при помощи Django, Flask, Qt и Tkinter. Помимо этой книги, он написал также «Python GUI Programming with Tkinter».

Многие Python-разработчики стремятся изучить инструменты, которые позволят им создавать приложения с графическими интерфейсами. Чаще всего этим разработчикам рекомендуют набор инструментов PyQt.

Но по PyQt просто удивительно мало обучающих ресурсов. Людям приходится пользоваться устаревшими книгами, документацией C++, искать информацию в блогах и постах на Stack Overflow. Эта книга призвана восполнить пробел и послужить современным пособием по PyQt для Python-разработчиков.

В своей первой книге — «Python GUI Programming with Tkinter» — Алан Мур разбирал основы создания графических интерфейсов. В этой же он решил сосредоточиться на тех уникальных возможностях, которые предоставляет именно PyQt: мультимедиа, анимация, 3D-графика, сети, многопоточность.

Эта книга предназначена для питонистов среднего уровня, желающих изучить фреймворк PyQt и научиться создавать мощные GUI-приложения. Читатель должен знать основы Python, его функционал и идиомы, а также инструментарий стандартной библиотеки. Предварительные знания по созданию именно графических интерфейсов не требуются.


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

Сообщение Изучаем популярные библиотеки Python: книги 2019 года появились сначала на Pythonist.


Source: pythonist.ru knigi feed

Установка Python в Linux Mint

Знание языка Python — один из важнейших навыков системного программиста. Этот язык программирования поистине незаменим для автоматизации рутинных задач. Работают скрипты в режиме интерпретатора, их не нужно компилировать, их содержимое практически не привязано к конкретной операционной системе.

Универсальность позволяет применять этот язык программирования в разных сферах — от обычного парсинга данных до систем машинного обучения, графических редакторов и даже игр. В этой статье мы поговорим о том как установить Python в Linux Mint.

Читать

Работа с временным файлом в Python

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

 

Создание временного файла без модуля tempfile

Задачу временного файла можно выполнить без использования модуля tempfile, создав простой файл. Для этого вы должны создать обычный файл, выполнить временные задачи и удалить файл после выполнения задач. В этом примере временный файл с именем temp.txt открывается в режиме записи, и во временный файл записывается текст. Модуль ‘ os ‘ используется здесь для чтения содержимого файла temp.txt и удаления файла после выполнения задачи.

# Импортировать модуль os

import os# Определить имя временного файла

filename = ‘temp.txt’

# Открыть файл в режиме чтения

fh = open(filename, ‘w’)

try:

# Распечатать сообщение перед записью

print(«Запись в файл >>> n»)

# Записываем строку в файл

fh.write(«Тестирование временного файла»)

# Наконец, закроем файл после записи

fh.close()

finally:

# Напечатайте сообщение перед чтением

print(«<<< Чтение из файла»)

# Запустить команду bash, чтобы прочитать файл

os.system(«cat temp.txt»)

# Распечатать новую строку

print(«n»)

# Удалить временный файл

os.remove(filename)

Создание временного файла с помощью метода TemporaryFile()

В этом примере для создания временного файла используется модуль tempfile. В этом модуле есть много методов работы с временным файлом. Метод TemporaryFile() используется здесь для создания временного файла. Временный файл открывается в сценарии как текстовый файл в режиме записи. По умолчанию временный файл будет создан в текущем месте. Две строки текста записываются во временный файл с помощью метода write(). Затем вызывается метод seek(), чтобы установить указатель файла в начало файла. Содержимое файла печатается в терминале с помощью метода read(). Метод close() модуля используется для закрытия файла и автоматического удаления файла.

# Импортировать модуль временного файла

import tempfile# Объявить объект для открытия временного файла для записи

tmp = tempfile.TemporaryFile(‘w + t’)

try:

# Распечатать сообщение перед записью

print(‘Запись во временный файл …’)

# Записать данные во временный файл

tmp.write(‘AndreyEx n’)

tmp.write(‘Содержимое временного файла’)

# Перейти к началу файла

tmp.seek(0)

# Прочитать содержимое временного файла

print(‘ Чтение временного файла: n {0} ‘.format(tmp.read()))

finally:

# Автоматическое удаление временного файла

tmp.close()

Создание временного файла с использованием метода NamedTemporaryFile ()

В предыдущем примере имя временного файла создается случайным образом. Но если вы хотите установить любое собственное имя для временного файла, вы должны использовать метод NamedTemporaryFile() для создания временного файла. В этом примере временный файл открывается в режиме записи с помощью метода NamedTemporaryFile(). Далее устанавливается имя файла temp.txt. Одна строка текста записывается в файл и считывается из файла, как в предыдущем примере. Ранее упоминалось, что временный файл удаляется автоматически при вызове метода close(). После удаления здесь используется модуль ‘os’, чтобы проверить, существует ли временный файл.

# Импортировать модуль временного файла

import tempfile# Импортировать модуль os

import os

# Объявить объект для открытия временного файла для записи

tmp = tempfile.NamedTemporaryFile(‘w + t’)

# Объявить имя временного файла

tmp.name = «temp.txt»

try:

# Распечатать сообщение перед записью

print(‘Записать данные во временный файл …’)

# Записать данные во временный файл

tmp.write(‘Это временное содержимое.’)

# Перейти к началу файла

tmp.seek(0)

# Прочитать содержимое временного файла

print(‘Прочитать содержимое временного файла: n {0}’ .format(tmp.read()))

finally:

# Удалить файл автоматически

tmp.close()

# Проверить, существует ли файл,

if (os.path.exists(tmp.name)) :

print(‘Файл существует’)

else:

print(‘Файл не существует’)

Создание временного файла с префиксом и суффиксом

Все временные файлы создаются в текущем месте для предыдущих примеров. Местоположение временного файла, а также префикс и суффикс для временного файла можно указать во время создания файла с помощью метода NamedTemporaryFile(). Согласно следующему сценарию, временное имя файла будет начинаться с «tm_» и заканчиваться на «_fl». Файл будет сохранен в папке «/tmp». После создания файла временное имя файла печатается с использованием свойства name . Затем модуль ‘ os’ проверяет, удален файл или нет.

# Импортировать модуль временного файла

import tempfile# Импортировать модуль os

import os

# Объявить объект для создания временного файла с суффиксом и префиксом

tmp = tempfile.NamedTemporaryFile(mode = ‘w + t’, prefix = ‘tm_’, suffix = ‘_fl’, dir = ‘/tmp’)

# Распечатать временное имя файла

print(tmp.name)

try:

# Распечатать сообщение перед записью

print(‘Записать данные во временный файл …’)

# Записать данные во временный файл

tmp.write(‘Это временное содержимое.’)

finally:

# Автоматически удалить файл

tmp.close()

if (os.path.exists(tmp.name) == False) :

print(‘Файл удален’)

Заключение:

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



2021-01-28T09:15:56
Python

Применяем Python на практике: книги по прикладному использованию языка, изданные в 2019 году

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

Эта подборка будет интересна уже опытным питонистам, поскольку для понимания материала нужны хорошие знания языка.

Изучение робототехники с помощью Python

Обложка книги: "Изучение робототехники с помощью Python"

Автор: Лентин Джозеф. Язык: русский.

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

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

Книга предназначена для инженеров-робототехников. Помимо знания самого языка Python, вам пригодится хорошее знание ROS, OpenCV, OpenNI и PCL.

Прикладной анализ текстовых данных на Python

Обложка книги "Прикладной анализ текстовых данных на Python"

Авторы: Бенджамин Бенгфорт, Ребекка Билбро, Тони Охеда. Язык: русский.

Из этой книги вы узнаете о том, как применять методы машинного обучения для анализа текста. Вы будете использовать такие библиотеки Python, как Scikit-Learn, NLTK, Gensim, spaCy, NetworkX и Yellowbrick.

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

Text Analytics with Python

Обложка книги "Text Analytics with Python"

Автор: Dipanjan Sarkar. Язык: английский.

Dipanjan Sarkar — data scientist в Red Hat. Он консультировал несколько стартапов, а также некоторые солидные компании вроде Intel. Имеет диплом по data science и разработке программ, но при этом — горячий сторонник самообразования и открытых онлайн-курсов.

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

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

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

Изучение сложных систем с помощью Python

Обложка книги "Изучение сложных систем с помощью Python"

Автор: Аллен Б. Дауни. Язык: русский.

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

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

Примеры в книге написаны на Python, так что читатель должен владеть этим языком, а также разбираться в ООП. Автор применяет библиотеки NumPy, SciPy и NetworkX, и если вы с ними знакомы, это облегчит вам чтение (но знание их не обязательно). Кроме того предполагается, что читатель не совсем далек от математики (в объяснениях применяются логарифмы и векторы).

Аллен Дауни — опытный автор: его перу принадлежат несколько бесплатных учебников по Python и науке о данных. Также он ведет блог о байесовской вероятности и статистике (Probably Overthinking It).

Вероятностное программирование на Python

Обложка книги "Вероятностное программирование на Python"

Автор: Дэвидсон-Пайлон Кэмерон. Язык: русский.

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

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

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

Practical Cryptography in Python

Обложка книги "Practical Cryptography in Python"

Авторы: Seth James Nielson, Christopher K. Monson. Язык: английский.

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

В начале книги рассмотрены алгоритмы хэширования, симметричное и асимметричное шифрование. Далее авторы переходят к цифровым сертификатам, цифровым подписям и кодам аутентификации сообщений. В последних главах рассказывается, как все это используется вместе — в интересных и полезных комбинациях.

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

В конце глав вы найдете упражнения на закрепление материала.

DevOps in Python

Обложка книги "DevOps in Python"

Автор: Moshe Zadka. Язык: английский.

Аспекты применения Python, интересные SRE/DevOps-специалистам, довольно редко рассматриваются в книгах. Им приходится полагаться на официальную документацию и посты в блогах. Моше Задка решил заполнить этот пробел.

Из книги «DevOps in Python» вы узнаете, как использовать всю мощь языка Python для автоматизации операций.

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

Далее Моше Задка переходит к рассмотрению сторонних библиотек из экосистемы Python. Вы узнаете, как использовать эти пакеты, как построить рабочие процессы, когда их нужно обновлять и какие инструменты при этом используются.

Помимо библиотек, в книге рассматривается работа виртуальных машин, сервисов и контейнеров.

Книга рассчитана на специалистов, знающих Python.

Python Network Programming

Обложка книги "Python Network Programming"

Авторы: Abhishek Ratan, Eric Chou, Pradeeban Kathiravelu. Язык: английский.

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

Вы научитесь создавать простые сетевые клиенты, SDN и NFV системы, а также расширять свои сети при помощи Mininet. Авторы рассказывают, как использовать Python для DevOps и как пользоваться опенсорсными инструментами для тестирования, обеспечения безопасности и анализа сетей.

К концу чтения книги вы будете знать, как разрабатывать клиенты веб-API, email-клиенты, SSH и FTP. Кроме того, вы научитесь анализировать уязвимости в безопасности сети.

Math adventures with Python

Обложка книги "Math adventures with Python"

Автор: Peter Farrell. Язык: английский.

Иллюстрированное пособие для изучения математики при помощи кода.

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

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

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

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

Math for Programmers

Обложка книги "Math for Programmers"

Автор: Paul Orland. Язык: английский.

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

Представьте, что хорошее вино было бы одним из школьных предметов. Вероятно, на уроках вы изучали бы техники ферментации и приемы выращивания винограда. В качестве домашних заданий иногда предписывалось бы выпить 3-4 бокала вина. Иногда оно было бы вкусным, иногда — нет, но в любом случае, это скорее отвратило бы вас и от вина, и от виноделия. То же и с математикой. Традиционные методы преподавания способны отбить вкус к ней.

В этой книге, как вы уже поняли из названия, для изложения математических концепций применяется программирование на Python и реальные примеры (больше никаких вопросов «Ну и где мне это пригодится в жизни?!»).


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

Сообщение Применяем Python на практике: книги по прикладному использованию языка, изданные в 2019 году появились сначала на Pythonist.


Source: pythonist.ru knigi feed

Как использовать функцию NumPy arange() в Python

В библиотеке Python NumPy существует множество функций для выполнения различных типов числовых и научных операций. Создание различных типов массивов для различных целей — одно из практических применений библиотеки NumPy. В Python есть встроенная функция arange() для создания списка последовательных чисел. arange() — одна из функций создания массива библиотеки NumPy для создания массива числовых диапазонов.

 

Синтаксис

np.array  np.arange([start, ]stop, [step, ], dtype=None)

 

Эта функция может принимать четыре аргумента. Начала аргумент является необязательным, который определяет начальное значение массива. Если в функции используется начальное значение, то обязательный аргумент stop потребует определения конечного значения массива. Шаг аргумент является необязательным, что определяет разницу между элементами. Значение шага по умолчанию — 1, и значение этого аргумента не может быть 0. Четвертый аргумент, dtype, определяет тип данных элемента массива, а значение по умолчанию для этого аргумента — None . Эта функция возвращает объект массива на основе значений аргументов.

 

Использование функции arange()

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

 

Пример-1: Использование функции arange() с одним аргументом

Когда функция arange() библиотеки NumPy используется с одним аргументом, тогда в качестве значения аргумента устанавливается верхнее значение массива. Следующий скрипт создаст массив значений диапазона NumPy и распечатает различные атрибуты массива и значения массива. 12 был использован в качестве значения аргумента функции arange(), которая создаст массив NumPy из 12 элементов, которые будут начинаться с 0 и заканчиваться до 11. Затем будут напечатаны размер, размер и тип данных массива. Значения массива будут напечатаны позже.

# Импортировать NumPy



import numpy as np



# Создать одномерный массив NumPy последовательных чисел



np_array = np.arange(12)



# Распечатать различные атрибуты массива NumPy



print('Размерность массива: ', np_array.ndim)



print('Длина массива: ', np_array.size)



print('Тип данных массива: ', np_array.dtype)



# Распечатать значения массива NumPy



print('Значения массива являются:', np_array)

Пример-2: Использование функции arange() с двумя аргументами

Когда функция arange() используется с двумя аргументами, тогда начальное и конечное значения массива будут установлены как значения аргументов. В следующем примере показано, как создать массив с нижним и верхним значениями с помощью функции arange() . Первый массив создается установкой 10 в начальное значение и 25 в конечное значение. Будет создан массив из 15 последовательных целых чисел. Затем будут напечатаны два атрибута и значения массива. Второй массив создается установкой 0,5 в начальное значение и 5,5 в конце. Будет создан массив из 5 последовательных плавающих чисел. Те же атрибуты и значения этого массива будут напечатаны позже.

# Импортировать библиотеку NumPy



import numpy as np



# Создать массив NumPy целых чисел с начальным и конечным значениями



np_array1 = np.arange(10, 25)



# Распечатать различные атрибуты массива



print('The size of the array: ', np_array1.size)



print('Тип данных массива: ', np_array1.dtype)



# Распечатать значения NumPy array



print('Значения массива являются:', np_array1)



# Создайте массив NumPy чисел с плавающей запятой с начальным и конечным значениями



np_array2 = np.arange(0.5, 5.5)



# Распечатать различные атрибуты массива



print('nРазмер массива: ', np_array2.size)



print('Тип данных массива: ', np_array2.dtype)



# Распечатать значения



print('Значения массива являются:', np_array2)

 

Пример-3: Использование функции arange() с тремя аргументами

В следующем примере показано использование функции arange() с тремя аргументами. 10 устанавливается для аргумента start , 20 устанавливается для аргумента остановки и 2 устанавливается для значения аргумента step функции arange(). Он создаст массив из 5 целочисленных значений. Размер, тип данных и значения массива будут напечатаны в качестве вывода.

# Импортировать Numpy



import numpy as np



# Создать массив NumPy целых чисел со значениями начала, конца и шага



np_array = np.arange(10, 20, 2)



# Распечатать различные атрибуты массива



print('Размер массива:', np_array. size)



print('Тип данных массива:', np_array. dtype)



# Распечатать значения массива NumPy



print('Значения массива:', np_array)

 

Пример-4: Использование функции arange() с отрицательными значениями аргументов

В следующем примере показано использование функции arange() с отрицательными значениями аргументов. 50 установлено для аргумента start, 20 установлено для аргумента остановки, а 2 установлено для значения аргумента step функции arange(). Он создаст массив из 9 отрицательных целых чисел. Размер, тип данных и значения массива будут напечатаны в качестве вывода.

# Импортировать Numpy



import numpy as np



# Создать массив отрицательных чисел NumPy со значениями начала, конца и шага



np_array = np. arange(- 50 , - 5 , 5)



# Распечатать различные атрибуты массива



print('Размер массива:' , np_array. size)



print('Тип данных массива:' , np_array. dtype)



# Распечатать значения массива NumPy



print('Значения массива:' ,np_array)

 

Заключение

Способы создания массива NumPy с помощью функции arange() были описаны в этом руководстве с использованием нескольких примеров. Здесь показано создание массива с последовательными положительными и отрицательными числами с помощью этой функции. Мы надеемся, что цель использования функции arange() будет понятна читателям после прочтения этой статьи.



2021-01-27T05:59:03
Python