__name__

What is __name__ ?

__name__ is a special built-in  attribute in python, which returns the name of the current module or function. As we know , python allows us to import one module into another. So we can create different modules for different functionalities. The __name__ is a special attribute contained in every module of python.

__name__ let us know whether we are using an imported module function or function within main module. If the module is running as main program  (function is inside main program) then it returns ‘__main__’ otherwise it will return the name of the module in which it exist.

__name__ == ‘__main__’

You may seen  __name__ == ‘ __name__’ in different programs. As we discussed earlier, if a module is running as main program then __name will return  ‘__main__’ . So we can take advantage of this , by deciding or controlling the accessibility of the function. We can customize the accessibility , according to how it runs whether it is working as main program or imported function.

Sometimes when you are importing a module .You would like to know whether a module function is being used as an import, or if you are using the original .

if __name__ == '__main__'

If module running directly , it returns true . Otherwise it returns file if it is imported into another module.

Unlike another languages , there is no need to define main() . Whole code at indentation level 0 (at top level , with no starting space ) is called main.

Example

Suppose , you want to change the behaviour , accessibility of particular function . You want run it only when it is working as main program , otherwise not if it is being imported.

There are two files

  1. area.py
  2. display.py

area.py

def circle_area(radius):
    '''Accessible only in main program '''
    return 3.14 * radius * radius

print('value of __name__ is: '+__name__)

if __name__ == '__main__':
    print('area.py running directly')
    a = circle_area(10)
    print("Area of circle is :", a)

else:
    print("area.py has been imported")

display.py

import area

area.circle_area(10)
print("Value of __name__ is: " + __name__ )

if __name__ == '__main__':
    print('display.py running directly')

else:
    print("display.py has been imported")

Output

__name__ == __main__
__name__ == __main__

In example above, there are two files area.py and display.py .  We use attribute __name__ inside both of files. As you can see in the output :

  • First i have call area.py , so here variable __name__ returns the ‘__main__’  , prints area.py running directly, and function returns area.
  • Secondly , i have call display.py , as shown in input above , inside display.py i have called area.py . So variable __name__ returns name of the module being used i.e. area.
  • Also display.py prints that it is running directly.

So that’s all about __name__ in python , i hope you guys enjoyed the article , Thanks!!!

25 thoughts on “__name__

Leave a Reply

Your email address will not be published. Required fields are marked *

  1. Do you mind if I quote a few of your posts as long as I provide credit and sources back to your weblog? My website is in the very same area of interest as yours and my users would truly benefit from some of the information you provide here. Please let me know if this alright with you. Thank you!

  2. I feel this is among the such a lot significant information for me. And i’m satisfied studying your article. But wanna statement on few common things, The site taste is perfect, the articles is truly great : D. Good job, cheers

  3. Hello There. I found your blog using msn. This is an extremely well written article. I’ll be sure to bookmark it and return to read more of your useful information. Thanks for the post. I’ll certainly comeback.

  4. I like what you guys are up also. Such clever work and reporting! Carry on the superb works guys I¡¦ve incorporated you guys to my blogroll. I think it will improve the value of my web site 🙂

  5. Pretty nice post. I just stumbled upon your blog and wanted to say that I’ve really enjoyed browsing your blog posts. In any case I’ll be subscribing to your feed and I hope you write again very soon!

  6. hello there and thank you for your information – I’ve definitely picked up anything new from right here. I did however expertise several technical issues using this site, as I experienced to reload the website a lot of times previous to I could get it to load properly. I had been wondering if your hosting is OK? Not that I’m complaining, but slow loading instances times will very frequently affect your placement in google and can damage your high-quality score if advertising and marketing with Adwords. Well I’m adding this RSS to my e-mail and could look out for a lot more of your respective intriguing content. Make sure you update this again soon..

  7. I like what you guys are up too. Such intelligent work and reporting! Keep up the superb works guys I have incorporated you guys to my blogroll. I think it will improve the value of my website 🙂

  8. I simply want to mention I’m new to blogging and site-building and absolutely liked you’re web-site. Most likely I’m planning to bookmark your website . You really come with really good stories. Thanks for sharing your web-site.

  9. Hello, i think that i saw you visited my weblog thus i came to “return the favor”.I am trying to find things to enhance my site!I suppose its ok to use a few of your ideas!! empire blue cross blueshields

  10. I have not checked in here for some time because I thought it was getting boring, but the last several posts are good quality so I guess I’ll add you back to my daily bloglist. You deserve it my friend 🙂

  11. Да, действительно. Я согласен со всем выше сказанным. Можем пообщаться на эту тему.


    Вы не правы. Я уверен. Могу это доказать. Пишите мне в PM. fifa 15 moddingway скачать торрент, скачать игру fifa 15 ultimate или fifa 15 cracks 3dm fifa 15 скачать на планшет

  12. Я уверен, что это — ложный путь.


    Только посмейте еще раз сделать это! скачать взломанную fifa 15 на андроид, скачать fifaconfig для fifa 15 или fifa 15 cracked by glowstorm fifa 15 скачать торрент pc последняя версия

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

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

    Центр Энергетических Решений и Инноваций – это сформировавшаяся фирма на рынке оказания услуг в отрасли электрических услуг и снабжения. Инженеры предоставляют поддержку в Москве и ближайших населенных пунктах страны. Если вам понадобиться price list на электрические работы, вы можете установить связь со специалистами по телефону +7 (495) 2015-077, где вам предоставят ответы на все вопросы и расскажут всё необходимое.

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

    Ведь в организации устроены настоящие профессионалы, а сама фирма размещена по адресу г. Москва, ул.Верхняя Красносельская, д.34, пом.V, комн. 2Г. Если Вас заинтересует стоимость электро работ, устанавливайте связь по контактным данным ООО, где администраторы проконсультируют Вас по главным вопросам.

  14. Вы несколько месяцев выбирали компанию, которая сможет заняться конструированием оборудования? Было тяжело найти сотрудников в отрасли производства оборудования для полимер-песчаной продукции? С содействием сотрудников фирмы, которых можно подобрать полимерпесчаное оборудование, но если вы зайдете на сайт 18PS.RU, то все ваши сложности будут устранены!

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

    На ресурсе компании вы можете просмотреть каталог, в котором находится оборудование к реализации. На всю технику идёт гарантия. Если вы хотите создать бизнес под ключ, вам необходимо будет надёжное оборудование. Именно такие товары вы сможете подобрать, если обратитесь к менеджерам компании. Менеджеры проконсультируют вас и посоветуют, как разработать крутой бизнес по переработке пвх мусора и продвигать его. В это время разработать рентабельный бизнес не так уж и легко. Чтобы не упасть в глазах, важно максимально изучить сектор.

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

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

Please wait...

Subscribe to our newsletter

Want to be notified when our article is published? Enter your email address and name below to be the first to know.