Python Forum
Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Naming convention advice
#1
I recently went over all methods of a project to regroups them by reverse naming, alphabetical order, and type (third party, private, public). Finally I added an underscore in front of all private methods. One of the class is a GUI for preferences (PreferencesForm), which contain only private methods. The class is huge and is only called as a standalone instance, so should I still prefix all methods with an underscore?

You can take a look at the module here:
https://gitlab.com/william.belanger/qtpa...erences.py
Reply
#2
Post your code here, using BBCode tags.
Reply
#3
As the code is not very relevant, here is a summary of two modules. On the left the methods are sorted and internals are marked with an underscore, on the right all methods are internals so they have no _prefix. I used CapitalizedWords to stay consistent with PyQt style (as recommended in PEP8).

[Image: Untitled.png]
Reply
#4
Please read forum rules, especially BBCode (as suggested in previous post). Please do not post images. You can run the code through pep8: https://pypi.org/project/pep8/upgraded to pycodestyle: https://pypi.org/project/pycodestyle/
this will point out non complaint naming. Generally Camel case is reserved for Class names, and functions and methods use snake case (lower case and underscores)
Reply
#5
Thanks for the tips. I already looked over the code with flake and pep8 utilities. I don't need advices about the code itself, but I am rather wondering about the labeling of private methods. To make it more clear, my question is does it make sense to mark all methods as private when there are no public methods? It seems like it would not give much useful informations. Or maybe there is a convention for this particular case? Unfortunatly after reading through PEP8 I did not found a definitive answer.

As for the CamelCase, as I wrote earlier I know that the snake_case is usually recommended, but as I work with Qt framework, consistency is preferred. As written in PEP8:

Quote:New modules and packages (including third party frameworks) should be written to these standards, but where an existing library has a different style, internal consistency is preferred.
Reply
#6
I understand (though I can be very wrong) private methods are only cosmetic, and not enforced.
Usually a single starting underscore for private.
Not much help here.

Quote:but as I work with Qt framework, consistency is preferred
I agree with that.
Reply


Possibly Related Threads…
Thread Author Replies Views Last Post
  naming entities(city abbreviations) tirumalaramakrishna 1 1,237 May-06-2022, 11:22 AM
Last Post: jefsummers
  Python Style and Naming Variables rsherry8 3 2,201 Jun-07-2021, 09:30 PM
Last Post: deanhystad
  Naming the file as time and date. BettyTurnips 3 2,964 Jan-15-2021, 07:52 AM
Last Post: BettyTurnips
  naming conventions mvolkmann 4 2,136 Sep-28-2020, 05:51 PM
Last Post: Gribouillis
  Question about naming variables in class methods sShadowSerpent 1 2,002 Mar-25-2020, 04:51 PM
Last Post: ndc85430
  Dyanmically Naming Files ovidius 3 2,523 Jan-29-2020, 02:44 PM
Last Post: buran
  naming images adding to number within multiple functions Bmart6969 0 1,918 Oct-09-2019, 10:11 PM
Last Post: Bmart6969
  Sub: Python-3: Better Avoid Naming A Variable As list ? adt 9 4,004 Aug-29-2019, 08:15 AM
Last Post: adt
  Python Naming Error: List not defined Intelligent_Agent0 1 14,299 Mar-13-2018, 08:34 PM
Last Post: nilamo

Forum Jump:

User Panel Messages

Announcements
Announcement #1 8/1/2020
Announcement #2 8/2/2020
Announcement #3 8/6/2020