Если вы забыли запятую в списке строк, Python (2.7) автоматически соедините две строки. Например:Почему Python автоматически объединяет две отдельные строки?
x = ['id', 'date' 'time']
print(x)
#[id, 'datetime']
Такое поведение кажется, противоречит подавляющему большинству «случаи применения», где пользователь просто забыл запятую. Это приводит к отсутствию ошибки в коде или возникновению нечетного сообщения об ошибке. В приведенном выше примере, например, это был список атрибутов для объекта, и он выбрал AttributeError: 'YourObjectClass' object has no attribute 'datetime'
. Является ли это признаком или ошибкой, и если это особенность, почему это функция?
Это поведение не только в списке. Попробуйте 'x = 'date' 'time'' –
В C: Чтобы разрешить более гибкую компоновку и решить некоторые проблемы предварительной обработки, Комитет C89 представил строковое литературное конкатенацию. Два строковых литерала подряд склеиваются вместе, без нулевого символа в середине, чтобы сделать один комбинированный строковый литерал __... Это дополнение к языку C позволяет программисту расширять строковый литерал за пределами физической линии без использование механизма обратной косой черты-новой строки » Я подозреваю, что у Python есть те же рассуждения, т. е. для уменьшения уродливых \ для продолжения длинных строковых литералов. – Burkely91