Форум сайта python.su
0
Ребят, только начал изучать программирование и питон, нашел задачу с решением
n = int(input())
print('The next number for the number ‘ + str(n) + ’ is ‘ + str(n + 1) + ’.')
print('The previous number for the number ‘ + str(n) + ’ is ‘ + str(n - 1) + ’.')
почему нужно писать str, а не int ? str по идее должна выводить строку полностью. а int число.
Офлайн
253
str не выводит строку (те не печатает на консоль) а создает. Плюсиками создается длинная строка которая затем печатается. А строки с целыми числами сложить нельзя.
Пример делал человек который не знает что такое format.
n=3 s=f"""The next number for the number {n} is {n + 1}. The previous number for the number {n} is {n - 1}."""
Отредактировано doza_and (Июнь 6, 2019 08:26:42)
Офлайн
0
doza_andТолько f-строки в версии 3.6+, мне кажется стоит это указывать, а то новичка можно совсем в тупик завести.
str не выводит строку (те не печатает на консоль) а создает. Плюсиками создается длинная строка которая затем печатается. А строки с целыми числами сложить нельзя.Пример делал человек который не знает что такое format.
Офлайн
857
zenook
нашел задачу с решением
zenookЭто плохая привычка из PHP и JavaScript - суммировать всё для создания строки. Когда он перенёс своё мышление на питон, то он не смог суммировать так же, так как в питоне строгая типизация, которая не даёт суммировать строки с числами. Поэтому он начал преобразовывать типы, чтобы всё-таки реализовать свою привычку.
почему нужно писать str, а не int ?
print('The next number for the number {} is {}.'.format(n, n + 1))
Отредактировано py.user.next (Июнь 6, 2019 12:12:59)
Офлайн