Оператор == всегда предназначен для сравнения ссылок на объекты, тогда как метод сравнения строк .equals () переопределяется для сравнения содержимого:
String s1 = new String("abc");
String s2 = new String("abc");
System.out.println(s1 == s2); // It prints false (reference comparison)
System.out.println(s1.equals(s2)); // It prints true (content comparison)
В Python (и почти любом другом языке программирования) числа хранятся в виде двоичных чисел. Таким образом, понятие «ведущих нулей» не имеет смысла: для компьютера 123
и 000123
будут храниться точно так же. (И действительно, математик сказал бы, что они представляют одно и то же значение.)
Если вам нужны начальные нули, вы должны сохранить значение в виде строки. Просто удалите вызов int
из функции numb
.