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

Python. Класс словаря defaultdict

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

Что, если вы попытаетесь получить доступ или изменить определенный ключ в несуществующем словаре? Что ж, в этом случае интерпретатор Python вызовет ошибку «KeyError» и прекратит выполнение программы.

Давайте посмотрим на пример ошибки KeyError.

#Создание списка

my_dict= {1:"Hello",2:"Welcome",3:"AndreyEx"}

#доступ к несуществующему ключу

my_dict[4]

 

Для обработки этой ошибки Python предоставляет тип defaultdict, класс словаря, который можно найти в модуле коллекций. В этой статье подробно рассматривается Python defaultdict.

 

Объяснение и примеры defaultdict

Defaultdict — это альтернатива словарю Python. Он возвращает объекты типа словаря. Defaultdict — это подкласс dict. В случае отсутствия ключа вместо того, чтобы вызывать ошибку «KeyError», значение по умолчанию предоставляется для несуществующего ключа. Синтаксис defaultdict следующий:

defaultdict(default_factory)

Функция defaultdict принимает в качестве аргумента параметр default_factory. Функция default_factory возвращает значение по умолчанию для определенного defaultdict. Если мы попытаемся получить доступ или изменить отсутствующий ключ, то функция default_factory в качестве результата вернет значение по умолчанию. Если функция default_factory отсутствует, defaultdic вызовет ошибку «KeyError», если будут отсутствовать какие-либо ключи.

Во-первых, мы реализуем defaultdic в нашем скрипте Python для доступа как к существующим, так и к отсутствующим ключам.

# импортировать defaultdict из модуля коллекции

from collections import defaultdict

# определение функции, возвращающей значение по умолчанию

def my_func():

print("Ключ не определен")

# создание defualtdict 

# передача my_func() в качестве аргумента для defaultdict

my_dict=defaultdict(my_func)

# определение ключей и значений

my_dict[1]="Привет"

my_dict[2]="Добро пожаловать"

my_dict[3]="AndreyEx" 

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

print(my_dict [1])

print(my_dict [2])

print(my_dict [3]) 

# доступ к отсутствующему или не определенному ключу

my_dict [4]

 

[4] — это недостающий ключ. Таким образом, вместо того, чтобы вызвать ошибку «KeyError», он вызывает функцию default_factory, которая возвращает значение по умолчанию.

Лямбда-функция, известная как анонимная функция, также может использоваться в качестве параметра default_factory.

Затем мы реализуем лямбда-функцию и передадим ее в качестве аргумента defaultdict.

# импортировать defaultdict из модуля коллекции

from collections import defaultdict

# создать defualtdict

# передать функцию Lamnda в качестве аргумента defaultdict

my_dict=defaultdict(lambda:"Ключ не определен")

# определение ключей и значений

my_dict[1]="Привет"

my_dict[2]="Добро пожаловать"

my_dict[3]="AndreyEx" 

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

print(my_dict[1])

print(my_dict [2])

print(my_dict [3]) 

#доступ к отсутствующему или не определенному ключу

print(my_dict [4])

 

Defaultdict вызывает default_factory для предоставления значения по умолчанию, но функция __missing () __ предоставляет значение по умолчанию. Функция __missing () __ — это встроенная функция в Python, которая принимает в качестве аргумента параметр default_factory. Если параметр default_factory не определен, функция __missing () __ вызывает ошибку «KeyError».

Здесь мы будем использовать функцию __missing () __ в нашем скрипте Python.

# импортировать defaultdict из модуля коллекции

from collections import defaultdict

# определение функции для возврата значения по умолчанию

def my_func() :

print("Ключ не определен")

# создание defualtdict 

#передача my_func() в качестве аргумента для defaultdict

my_dict=defaultdict(my_func)

# определение ключей и значений

my_dict[1]="AndreyEx" 

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

print(my_dict [1]) 

# доступ к отсутствующему или не определенному ключу

my_dict.__missing__(2)

 

Классы list и int также могут использоваться как параметры default_factory с defaultdict.

 

Список как параметр default_factory

Defaultdict создается со значениями списка, когда классу списка передается параметр default_factory.

# импортировать defaultdict из модуля коллекции

from collections import defaultdict

# определение класса списка передачи defaultdict

# как default_factory

my_dict=defaultdict(list)

for i in range(7):

my_dict[i].append(i)

#печать значений

print(my_dict)

 

На выходе отображаются значения в списке. Как видите, был создан defaultdict, содержащий ключ и значения.

 

Целые числа как параметр default_factory

Если мы передадим класс int в качестве параметра default_factory, мы сможем создать defaultdict, который будет содержать только целые числа. Мы создадим список целых чисел и сохраним его в defaultdict.

# импортировать defaultdict из модуля коллекции

from collections import defaultdict

# определение defaultdict

# передача класса int как default_factory

my_dict=defaultdict(int)

# создание списка целых чисел

my_list=[1,2,3]

for i in my_list:

my_dict[i]+=1

#печать значений

print(my_dict)

 

В данном выводе целые значения перед двоеточием (:) являются ключами, а целые значения после двоеточия — значениями.

 

Вывод

Dafualtdict — это подобный словарю класс, присутствующий в модуле коллекций. Он работает как словарь Python, но не вызывает ошибку «KeyError», если ключ не найден. Эта статья подробно объясняет defaultdict с различными примерами.



2020-11-25T12:42:58
Python

Замена строки Python

В этой статье мы поговорим о том, как заменить подстроку внутри строки в Python, используя метод replace() .

.replace () Метод

В Python строки представлены как неизменяемые объекты str . Класс str имеет множество методов, позволяющих управлять строками.

Метод .replace() имеет следующий синтаксис:

str.replace(old, new[, maxreplace])

  • str — строка, с которой вы работаете.
  • old — Подстрока, которую нужно заменить.
  • new — подстрока, заменяющая старую подстроку.
  • maxreplace — необязательный аргумент. Количество совпадений старой подстроки, которую вы хотите заменить. Матчи отсчитываются с начала строки.

Метод возвращает копию строки srt с некоторыми или всеми совпадениями подстроки old замененной на new . Если maxreplace не указан, заменяются все вхождения.

В приведенном ниже примере мы заменяем подстроку far в строке s с miles :

s = 'A long time ago in a galaxy far, far away.'s.replace('far', 'miles')

Результатом является новая строка:

'A long time ago in a galaxy miles, miles away.'

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

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

s = 'My ally is the Force, and a powerful ally it is.'s.replace('ally', 'friend', 1)

Строка результата будет выглядеть так:

'My friend is the Force, and a powerful ally it is.'

Чтобы удалить подстроку, используйте вместо нее пустую строку '' . Например, чтобы удалить space из следующей строки, вы должны использовать:

s = 'That’s no moon. It’s a space station.'s.replace('space ', '')

Новая строка будет выглядеть следующим образом:

`That’s no moon. It’s a station.'

Заменить подстроку в списке строк

Чтобы заменить подстроку в списке строк, используйте конструкцию понимания списка, как показано ниже:

s.replace('old', 'new') for s in list

Давайте посмотрим на следующий пример:

names = ['Anna Grace', 'Betty Grace', 'Emma Grace']new_names = [s.replace('Grace', 'Lee') for s in names]print(new_names)

Приведенный выше код создает копию списка, в котором все вхождения подстроки Grace заменены на Lee :

['Anna Lee', 'Betty Lee', 'Emma Lee']

Выводы

Замена подстроки в строке — одна из самых основных операций при написании кода на Python. После прочтения этого руководства вы должны хорошо понимать, как использовать метод replace() .

Если у вас есть какие-либо вопросы или отзывы, не стесняйтесь оставлять комментарии.



2020-11-25T00:58:18
Python

Как удалять файлы и каталоги в Python

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

В этом руководстве объясняется, как удалять файлы и каталоги с помощью функций из модулей os , pathlib и shutil .

Удаление файлов

В Python вы можете использовать os.remove() , os.unlink() , pathlib.Path.unlink() для удаления одного файла.

Модуль os обеспечивает переносимый способ взаимодействия с операционной системой. Модуль доступен как для Python 2, так и для 3.

Чтобы удалить один файл с помощью os.remove() , передайте путь к файлу в качестве аргумента:

import os



file_path = '/tmp/file.txt'

os.remove(file_path)


os.remove() и os.unlink() семантически идентичны:

import os



file_path = '/tmp/file.txt'

os.unlink(file_path)


Если указанный файл не существует, FileNotFoundError ошибка FileNotFoundError . И os.remove() и os.unlink() могут удалять только файлы, но не каталоги. Если указанный путь указывает на каталог, они IsADirectoryError ошибку IsADirectoryError .

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

Чтобы избежать ошибок при удалении файлов, вы можете использовать обработку исключений, чтобы перехватить исключение и отправить соответствующее сообщение об ошибке:

import os



file_path = '/tmp/file.txt'



try:

    os.remove(file_path)

except OSError as e:

    print("Error: %s : %s" % (file_path, e.strerror))


Модуль pathlib доступен в Python 3.4 и выше. Если вы хотите использовать этот модуль в Python 2, вы можете установить его с помощью pip. pathlib предоставляет объектно-ориентированный интерфейс для работы с путями файловой системы для различных операционных систем.

Чтобы удалить файл с pathlib модуля pathlib , создайте объект Path указывающий на файл, и вызовите метод unlink() для объекта:

from pathlib import Path



file_path = Path('/tmp/file.txt')



try:

    file_path.unlink()

except OSError as e:

    print("Error: %s : %s" % (file_path, e.strerror))


pathlib.Path.unlink() , os.remove() и os.unlink() также можно использовать для удаления символической ссылки .

Сопоставление с образцом

Вы можете использовать модуль glob для сопоставления нескольких файлов на основе шаблона. Например, чтобы удалить все файлы .txt каталоге /tmp , вы должны использовать что-то вроде этого:

import os

import glob



files = glob.glob('/tmp/*.txt')



for f in files:

    try:

        f.unlink()

    except OSError as e:

        print("Error: %s : %s" % (f, e.strerror))


Чтобы рекурсивно удалить все файлы .txt в каталоге /tmp и всех подкаталогах в нем, передайте аргумент recursive=True функции glob() и используйте шаблон « ** »:

import os

import glob



files = glob.glob('/tmp/**/*.txt', recursive=True)



for f in files:

    try:

        os.remove(f)

    except OSError as e:

        print("Error: %s : %s" % (f, e.strerror))


Модуль pathlib включает две функции glob, glob() и rglob() для сопоставления файлов в данном каталоге. glob() сопоставляет файлы только в каталоге верхнего уровня. rglob() сопоставляет все файлы в каталоге и всех подкаталогах. В следующем примере кода удаляются все файлы .txt каталоге /tmp :

from pathlib import Path



for f in Path('/tmp').glob('*.txt'):

    try:

        f.unlink()

    except OSError as e:

        print("Error: %s : %s" % (f, e.strerror))


Удаление каталогов (папок)

В Python вы можете использовать os.rmdir() и pathlib.Path.rmdir() для удаления пустого каталога и shutil.rmtree() для удаления непустого каталога.

В следующем примере показано, как удалить пустой каталог:

import os



dir_path = '/tmp/img'



try:

    os.rmdir(dir_path)

except OSError as e:

    print("Error: %s : %s" % (dir_path, e.strerror))


В качестве альтернативы вы можете удалить каталоги с pathlib модуля pathlib :

from pathlib import Path



dir_path = Path('/tmp/img')



try:

    dir_path.rmdir()

except OSError as e:

    print("Error: %s : %s" % (dir_path, e.strerror))


Модуль shutil позволяет выполнять ряд высокоуровневых операций с файлами и каталогами.

С помощью функции shutil.rmtree() вы можете удалить указанный каталог, включая его содержимое:

import shutil



dir_path = '/tmp/img'



try:

    shutil.rmtree(dir_path)

except OSError as e:

    print("Error: %s : %s" % (dir_path, e.strerror))


Аргумент, переданный в shutil.rmtree() не может быть символической ссылкой на каталог.

Выводы

Python предоставляет несколько модулей для работы с файлами.

Мы показали вам, как использовать os.remove() , os.unlink() , pathlib.Path.unlink() для удаления одного файла, os.rmdir() и pathlib.Path.rmdir() для удаления пустого файла. directory и shutil.rmtree() для рекурсивного удаления каталога и всего его содержимого.

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

Если у вас есть какие-либо вопросы или отзывы, не стесняйтесь оставлять комментарии.



2020-11-22T08:11:03
Python

Функция фильтра в Python

Filter — это встроенная функция Python. Он фильтрует указанную последовательность или итерацию с помощью функции, которая проверяет каждый элемент или элемент в итерации на истинность или ложь. Проще говоря, функция filter фильтрует итерируемое через функцию. Данная функция проверяет каждый элемент последовательности или итерации и возвращает истину, если элемент удовлетворяет заданным критериям. В результате функция filter() создает новый итератор. Чаще всего используются итерируемые списки, кортежи и словари. В этой статье кратко описывается функция filter() с помощью примеров.

 

Синтаксис функции filter()

Давайте сначала обсудим синтаксис функции filter(). Синтаксис функции filter() следующий:

filter(function, iterable or sequence)

 

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

Давайте посмотрим на примеры функции filter() и реализуем ее в нашем скрипте Python.

 

Пример 1. Отфильтруйте список чисел

Создадим список номеров и отфильтруем его. В данном примере list_func() оценивает каждый элемент списка по заданному условию. Если элемент списка больше 5, функция возвращает значение true и добавляет элемент в фильтр.

#создание списка номеров



my_list = [1,2,3,4,5,6,10,20,35,8,4,50,60]



#создаем функцию



def list_func(listObj):



# условный оператор, чтобы проверить номер



if(listObj>5):



return True



else:



return False



#используя функцию Filter для фильтрации повторяемое через list_func



numbers = filter(list_func,my_list)



#печать нового итератора



for i in numbers:



print(i)



 




В выходных данных отображается отфильтрованный итератор. Отфильтрованный итератор состоит из всех элементов, которые больше 5.

 

Пример 2: отфильтровать список символов

Создадим список символов и применим функцию фильтрации.

#создание списка номеров



my_list = ['a','b','c','l','d','i','k','n','o','u','x']



#создание функции



def list_func(listObj):



word_list=['l', 'i', 'n', 'u', 'x']



# условный оператор для проверки символа



if(listObj in word_list):



return True



else:



return False



#использование функции фильтра для фильтрации итераций через list_func



words = filter(list_func,my_list)



#печать нового цикла



for i in words:



print(i)




 

Примеры 3. Отфильтруйте четное число

Давайте отфильтруем четные числа из заданного списка чисел с помощью функции фильтрации.

#создание списка номеров



my_list = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16]



#создание функции



def list_func(listObj):



# условный оператор для проверки символа



if(listObj%2==0):



return True



else:



return False



#использование функции фильтра для фильтрации итераций через list_func



even_numbers= filter(list_func,my_list)



#печать нового цикла



for i in even_numbers:



print(i)




 

Примеры 4: отфильтровать високосный год

Давайте отфильтруем високосные годы из данного списка лет с помощью функции фильтрации.

#создание списка номеров



my_list = [2010,2012,2014,2016,2018,2020,2022,2024]



#создание функции



def list_func(listObj):



# условный оператор для проверки високосного года



if(listObj%4==0):



return True



else:



return False



#использование функции фильтра для фильтрации итераций через list_func



leap_year= filter(list_func,my_list)



#печать нового цикла



for i in leap_year:



print(i)




 

Выходные данные отображают високосные годы из данного списка лет.

 

Примеры 5: использование лямбда-функции с filter ()

Функция фильтра в основном используется с лямбда-функцией. Давайте передадим лямбда-функцию в качестве аргумента функции filter().

#создание списка номеров



my_list = [2010,2012,2014,2016,2018,2020,2022,2024]



##объявление переменной even_number



#переменная even_number содержит четные числа



#объявление функции lambda



even_number = filter(lambda listObj:listObj%2==0,my_list)



print("Список четных чисел")



for i in even_number:



print(i)



leap_year = filter(lambda listObj:listObj%4==0,my_list)



print("Список високосных лет")



for x in leap_year:



print(x)




 

Вывод

Filter() — это встроенная функция Python, которая используется для фильтрации итерации для данной функции. Эта статья объясняет функцию filter() с примерами.



2020-11-19T09:39:20
Python

Как проверить, существует ли файл или каталог в Python

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

В Python есть много разных способов проверить, существует ли файл, и определить его тип.

В этом руководстве показаны три различных метода проверки существования файла.

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

Самый простой способ проверить, существует ли файл, — это попытаться открыть файл. Этот подход не требует импорта какого-либо модуля и работает как с Python 2, так и с Python 3. Используйте этот метод, если вы хотите открыть файл и выполнить какое-либо действие.

В следующем фрагменте кода используется простой блок try-except. Мы пытаемся открыть файл filename.txt , и если файл не существует, возникает исключение IOError и IOError сообщение «Файл недоступен»:

try:
    f = open("filename.txt")
    # Do something with the file
except IOError:
    print("File not accessible")
finally:
    f.close()

Если вы используете Python 3, вы также можете использовать FileNotFoundError вместо исключения IOError .

При открытии файлов рекомендуется использовать ключевое слово with , которое обеспечивает правильное закрытие файла после завершения файловых операций, даже если во время операции возникает исключение. Это также делает ваш код короче, потому что вам не нужно закрывать файл с помощью функции close .

Следующий код эквивалентен предыдущему примеру:

try:
    with open('/etc/hosts') as f:
        print(f.readlines())
        # Do something with the file
except IOError:
    print("File not accessible")

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

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

Проверьте, существует ли файл с помощью модуля os.path

Модуль os.path предоставляет несколько полезных функций для работы с os.path путей. Модуль доступен как для Python 2, так и для 3.

В контексте этого руководства наиболее важными функциями являются:

  • os.path.exists(path) — возвращает true, если path — это файл, каталог или допустимая символическая ссылка.
  • os.path.isfile(path) — возвращает истину, если path является обычным файлом или символической ссылкой на файл.
  • os.path.isdir(path) — возвращает true, если path является каталогом или символической ссылкой на каталог.

Следующий оператор if проверяет, существует ли файл filename.txt :

import os.path

if os.path.isfile('filename.txt'):
    print ("File exist")
else:
    print ("File not exist")

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

Если вы хотите открыть и изменить файл, используйте предыдущий метод.

Проверьте, существует ли файл, используя модуль pathlib

Модуль pathlib доступен в Python 3.4 и выше. Этот модуль предоставляет объектно-ориентированный интерфейс для работы с путями файловой системы для различных операционных систем.

Как и в предыдущем примере, следующий код проверяет, существует ли файл filename.txt :

from pathlib import Path

if Path('filename.txt').is_file():
    print ("File exist")
else:
    print ("File not exist")

is_file возвращает истину, если path является обычным файлом или символической ссылкой на файл. Чтобы проверить наличие каталога, используйте метод is_dir .

Основное различие между pathlib и os.path заключается в том, что pathlib позволяет вам работать с путями как с объектами Path с соответствующими методами и атрибутами вместо обычных объектов str .

Если вы хотите использовать этот модуль в Python 2, вы можете установить его с помощью pip :

pip install pathlib2

Выводы

В этом руководстве мы показали вам, как с помощью Python проверить, существует ли файл или каталог.

Если у вас есть какие-либо вопросы или отзывы, не стесняйтесь оставлять комментарии.



2020-11-14T12:22:14
Python

Создавайте свои собственные модули Python

Python — это многоцелевой язык динамического программирования высокого уровня. Он предоставляет множество встроенных модулей и функций для выполнения различных типов задач. Помимо этого, мы также можем создавать наши собственные модули, используя Python. Модуль похож на библиотеку на Java, C, C ++ и C #. Модуль обычно представляет собой файл, содержащий функции и операторы. Функции и операторы модулей обеспечивают определенные функции. Модуль Python сохраняется с расширением .py. В этой статье мы научимся создавать собственные модули Python.

 

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

 

Создание модулей Python

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

Давайте создадим новый модуль с именем «MathOperation». Этот модуль содержит функции для выполнения сложения, вычитания, умножения и деления.

#Создание модуля MathOperation



#модуль обеспечивает функции сложения, вычитания, умножения и деления



#все функции принимают в качестве аргумента два числа



#создание функции добавления



def addition(num1,num2):



return num1+num2



#создание функции вычитания



def subtraction(num1,num2):



return num1-num2



#создание функции умножения



def multiplication(num1,num2):



return num1*num2



#создание функции деления



def division(num1,num2):



return num1/num2




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

 

Вызовите свой модуль

Давайте вызовем этот модуль в нашем другом скрипте Python с помощью команды import.

import MathOperation



#вызов функции сложения из модуля MathOperation



#функция вызывается с помощью имени модуля



print("Результат суммы: ",MathOperation.addition(10,4))



#вызов функции вычитания



print("Результат вычитания: ",MathOperation.subtraction(100,34))



#вызов функции умножения



print("Результат умножения: ",MathOperation.multiplication(4,3))



#вызов функции деления



print("Результат деления: ",MathOperation.division(200,5))




Вызов переменных модуля

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

#создание переменных



num1 = 10



num2 = 20



#создание списка учащихся



student = ['AndreyEx','Max','Alex','Term']



#создание студенческого словаря



std_dict = {'name':'AndreyEx','age':40,'email':'andr@andreyex.ru'}


 

Теперь давайте вызовем переменные и объекты в другом скрипте Python.

#импорт модуля



import MathOperation



#вызов переменной num1



print("Значение num1 равно:",MathOperation.num1)



#вызов переменной num2



print("Значение num1 равно:",MathOperation.num2)



#вызов списка студентов



print("Значение num1 равно:",MathOperation.student)



#список студентов



print(MathOperation.student[0])



print(MathOperation.student[1])



print(MathOperation.student[2])



print(MathOperation.student[3])



#печать студенческого словаря



print(MathOperation.std_dict)



#вызов элемента студенческого словаря



print(MathOperation.std_dict['name'])



print(MathOperation.std_dict['age'])



print(MathOperation.std_dict['email'])




Результат показывает, что мы успешно получили доступ к переменным и функциям из модуля «MathOperation».

 

Список всех функций и переменных модуля

Python предоставляет встроенную функцию dir (), которая перечисляет имена всех функций и переменных, присутствующих в конкретном модуле. Давайте воспользуемся функцией dir (), чтобы перечислить имена функций и переменных модуля «MathOperation».

Это наши функции и переменные, созданные в нашем модуле «MathOperation».

#создание модуля MathOperation



#модуль обеспечивает функции сложения, вычитания, умножения и деления



#все функции принимают в качестве аргумента два числа



#создание функции добавления



def addition(num1,num2):



return num1+num2



#создание функции вычитания



def subtraction(num1,num2):



return num1-num2



#создание функции умножения



def multiplication(num1,num2):



return num1*num2



#создание функции деления



def division(num1,num2):



return num1/num2



#создание переменных 



num1 = 10 num2 = 20 



#создание списка учащихся 



student = ['AndreyEx','Max','Alex','Term'] 



#создание студенческого словаря 



std_dict = {'name':'AndreyEx','age':40,'email':'andr@andreyex.ru'}


 

Теперь давайте вызовем функцию dir () в нашем скрипте Python.

#импорт модуля



import MathOperation



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



print(dir(MathOperation))


 

Вывод

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



2020-11-02T12:00:17
Python