In Python, adding 0
in front of any number needs an extra
Have a look at below:
>>> 0o7
7
>>> 0o71
57
>>> 0o713
459
>>>
>>> 0xa
10
>>> 0xA
10
>>> 0x67
103
>>>
» If you exceed the range or if you don't use x
| o
after 0
.
>>> 0o8
File "<stdin>", line 1
0o8
^
SyntaxError: invalid token
>>>
>>> 08
File "<stdin>", line 1
08
^
SyntaxError: invalid token
>>>
Suggestion: If you are still willing to use 0
& want to perform operations on phones (for testing) then you can use the below approach to update the numbers.
Here we will store phone number as string & whenever we will update that, we will remove 0
from front, convert the remaining part into an integer, add (any operation) ant convert back to its original (0
in front) form & I think it is good.
>>> student_phone = "016165544"
>>>
>>> # Add 3 to this
...
>>> student_phone = "0" + str(int(student_phone.lstrip("0")) + 3)
>>>
>>> student_phone
'016165547'
>>>
Finally, you can call in this way (as you are already doing in your problem except 2nd one).
>>> class Student:
... def __init__(self, student_name, student_id, student_phone):
... self.student_name = student_name
... self.student_id = student_id
... self.student_phone = student_phone
...
>>> obj = Student("ELizaa",1253251,16165544)
>>> print("student name",obj.student_name,"\nstudent id",obj.student_id,"\nStudent phone",obj.student_phone)
student name ELizaa
student id 1253251
Student phone 16165544
>>>
>>> obj = Student("ELizaa",1253251,"016165544")
>>> print("student name",obj.student_name,"\nstudent id",obj.student_id,"\nStudent phone",obj.student_phone)
student name ELizaa
student id 1253251
Student phone 016165544
>>>