localized ("mangled"to enclosing classes (see the discussion of pseudoprivate attributes in the name that is just single underscore (_retains the result of the last expression when you are working interactively in addition to these python interpreter conventionsthere are various other conventions that python programmers usually follow for instancelater in the book we'll see that class names commonly start with an uppercase letter and module names with lowercase letterand that the name selfthough not reservedusually has special role in classes in we'll also study anotherlarger category of names known as the built-inswhich are predefined but not reserved (and so can be reassignedopen worksthough sometimes you might wish it didn' !names have no typebut objects do this is mostly reviewbut remember that it' crucial to keep python' distinction between names and objects clear as described in objects have type ( integerlistand may be mutable or not names ( variables)on the other handare always just references to objectsthey have no notion of mutability and have no associated type informationapart from the type of the object they happen to reference at given point in time thusit' ok to assign the same name to different kinds of objects at different timesx "hellox [ bound to an integer object now it' string and now it' list in later examplesyou'll see that this generic nature of names can be decided advantage in python programming in you'll also learn that names also live in something called scopewhich defines where they can be usedthe place where you assign name determines where it is visible for additional naming suggestionssee the discussion of naming conventions in python' semi-official style guideknown as pep this guide is available at web search for "python pep technicallythis document formalizes coding standards for python library code though usefulthe usual caveats about coding standards apply here for one thingpep comes with more detail than you are probably ready if you've used more restrictive language like ++you may be interested to know that there is no notion of ++' const declaration in pythoncertain objects may be immutablebut names can always be assigned python also has ways to hide names in classes and modulesbut they're not the same as ++' declarations (if hiding attributes matters to yousee the coverage of _x module names in __x class names in and the private and public class decorators example in assignment statements