Bird
Raised Fist0
Pythonprogramming~10 mins

Naming rules and conventions in Python - Step-by-Step Execution

Choose your learning style10 modes available

Start learning this pattern below

Jump into concepts and practice - no test required

or
Recommended
Test this pattern10 questions across easy, medium, and hard to know if this pattern is strong
Concept Flow - Naming rules and conventions
Start
Choose name
Check rules
Apply conventions
Use name
End
Rename
Choose name
Pick a name, check if it follows Python rules, then apply style conventions before using it.
Execution Sample
Python
var1 = 10
_var2 = 20
3var = 30
MyVar = 40
my_var = 50
Shows examples of variable names, some valid, some invalid, and different naming styles.
Execution Table
StepVariable NameValid?ReasonConvention Style
1var1YesStarts with letter, contains letters and digitslowercase with digits allowed
2_var2YesStarts with underscore, allowedleading underscore for internal use
33varNoStarts with digit, not allowedN/A
4MyVarYesStarts with uppercase letter, allowedPascalCase (class style)
5my_varYesStarts with letter, contains underscoresnake_case (recommended for variables)
💡 Step 5 completed, all valid names except step 3 which is invalid due to starting with digit.
Variable Tracker
Variable NameValidityConvention
var1Validlowercase with digits
_var2Validleading underscore
3varInvalidstarts with digit
MyVarValidPascalCase
my_varValidsnake_case
Key Moments - 3 Insights
Why is '3var' not a valid variable name?
Because variable names cannot start with a digit, as shown in execution_table step 3.
What is the difference between 'MyVar' and 'my_var' naming styles?
'MyVar' uses PascalCase often for classes, while 'my_var' uses snake_case recommended for variables, as seen in execution_table steps 4 and 5.
Why might someone use a leading underscore like '_var2'?
A leading underscore indicates the variable is for internal use or private, shown in execution_table step 2.
Visual Quiz - 3 Questions
Test your understanding
Look at the execution_table, which variable name is invalid?
A_var2
B3var
Cvar1
Dmy_var
💡 Hint
Check the 'Valid?' column in execution_table row 3.
At which step does the variable name use CamelCase style?
AStep 1
BStep 5
CStep 4
DStep 2
💡 Hint
Look at the 'Convention Style' column in execution_table.
If we rename '3var' to 'var3', what changes in the execution_table?
A'var3' becomes valid and uses lowercase with digits
B'var3' becomes invalid
C'var3' uses CamelCase
D'var3' uses leading underscore style
💡 Hint
Refer to variable_tracker for naming validity and style.
Concept Snapshot
Python variable names must start with a letter or underscore, not a digit.
Use lowercase with underscores (snake_case) for variables.
PascalCase is for classes.
Leading underscore means internal use.
Avoid special characters and spaces.
Full Transcript
This lesson shows how to pick valid and good variable names in Python. Names must start with a letter or underscore, not a number. We see examples like 'var1' and '_var2' which are valid, but '3var' is invalid because it starts with a digit. Naming styles matter: snake_case is recommended for variables, PascalCase for classes, and leading underscores mean internal use. These rules help keep code clear and error-free.

Practice

(1/5)
1. Which of the following is a valid variable name in Python?
easy
A. my-variable
B. 2ndVariable
C. my_variable
D. my variable

Solution

  1. Step 1: Check the first character of each name

    Python variable names must start with a letter or underscore, not a number or special character.
  2. Step 2: Identify invalid characters

    Names cannot contain spaces or hyphens. Only letters, digits, and underscores are allowed.
  3. Final Answer:

    my_variable -> Option C
  4. Quick Check:

    Valid variable name = my_variable [OK]
Hint: Variable names start with letter/underscore, no spaces or hyphens [OK]
Common Mistakes:
  • Starting variable name with a number
  • Using hyphens instead of underscores
  • Including spaces in variable names
2. Which of these is the correct way to name a class in Python?
easy
A. MyClass
B. my_class
C. myclass
D. myClass

Solution

  1. Step 1: Recall class naming convention

    Class names in Python use CapitalizedWords style (PascalCase), starting with uppercase letters.
  2. Step 2: Compare options to convention

    Only 'MyClass' follows CapitalizedWords style correctly.
  3. Final Answer:

    MyClass -> Option A
  4. Quick Check:

    Class name style = CapitalizedWords [OK]
Hint: Class names use CapitalizedWords (PascalCase) [OK]
Common Mistakes:
  • Using lowercase or underscores for class names
  • Starting class names with lowercase letters
  • Mixing camelCase with underscores
3. What will be the output of this code?
_count = 5
Count = 10
print(_count + Count)
medium
A. NameError
B. 15
C. SyntaxError
D. 510

Solution

  1. Step 1: Understand variable names and case sensitivity

    Python variable names are case-sensitive, so '_count' and 'Count' are different variables.
  2. Step 2: Calculate the sum of the two variables

    _count = 5 and Count = 10, so 5 + 10 = 15.
  3. Final Answer:

    15 -> Option B
  4. Quick Check:

    5 + 10 = 15 [OK]
Hint: Variable names are case-sensitive; add values accordingly [OK]
Common Mistakes:
  • Ignoring case sensitivity and treating variables as same
  • Expecting concatenation instead of addition
  • Assuming syntax or name errors
4. Find the error in this variable name:
user-name = 'Alice'
medium
A. Variable names cannot contain hyphens
B. Variable names cannot start with a letter
C. Variable names cannot contain underscores
D. Variable names cannot be lowercase

Solution

  1. Step 1: Identify invalid characters in variable names

    Hyphens are not allowed in Python variable names because they are interpreted as minus signs.
  2. Step 2: Confirm other options are incorrect

    Variable names can start with letters, contain underscores, and be lowercase.
  3. Final Answer:

    Variable names cannot contain hyphens -> Option A
  4. Quick Check:

    Hyphens not allowed in names [OK]
Hint: No hyphens in variable names; use underscores instead [OK]
Common Mistakes:
  • Using hyphens instead of underscores
  • Thinking variable names can't start with letters
  • Confusing underscores with invalid characters
5. You want to create a dictionary where keys are variable names and values are their types. Which naming style is best for the keys?
variables = { 'UserName': str, 'user_age': int, '2ndUser': str }
Which keys follow Python naming rules and conventions?
hard
A. 'user_age' only
B. All keys are valid
C. 'UserName' only
D. 'UserName' and 'user_age' only

Solution

  1. Step 1: Check each key for naming rules

    'UserName' starts with a letter and uses CapitalizedWords (good for class names). 'user_age' uses lowercase with underscore (good for variables). '2ndUser' starts with a number, which is invalid.
  2. Step 2: Identify keys following naming conventions

    'UserName' and 'user_age' follow naming rules; '2ndUser' does not.
  3. Final Answer:

    'UserName' and 'user_age' only -> Option D
  4. Quick Check:

    Keys must start with letter; numbers not allowed [OK]
Hint: Keys must start with letter; numbers not allowed [OK]
Common Mistakes:
  • Allowing keys starting with numbers
  • Ignoring naming conventions for readability
  • Assuming all strings are valid variable names