Как исправить эту синтаксическую ошибку и Eof? [Дубликат]

Я объединил writing-mode и rotation:

    .rotated {
        writing-mode: tb-rl;
        transform: rotate(-180deg);
    }
<div class="rotated">Text from bottom with working width/height</div>

Это работает для меня без ошибок width и height в ячейках таблицы.

9
задан zondo 5 September 2016 в 01:59
поделиться

4 ответа

Для Python 2 вы хотите raw_input, а не input. Первый будет читать строку. Последний будет читать строку и попытаться выполнить ее, не рекомендуется, если вы не хотите, чтобы ваш код был поврежден человеком, который вводил данные.

Например, они могут делать что-то вроде вызовов произвольных функций, так как в следующем примере:

def sety99():
    global y
    y = 99

y = 0
input ("Enter something: ")
print y

Если вы запустите этот код под Python 2 и введите sety99(), вывод будет 99, несмотря на то, что ни в коем случае ваш код (в его нормальной поток выполнения) целенаправленно устанавливают y на что угодно, кроме нуля (он выполняет функцию, но эта функция никогда явно не вызывается вашим кодом). Причина этого в том, что вызов input(prompt) эквивалентен eval(raw_input(prompt)).

См. здесь для подробностей gory.

Имейте в виду, что Python 3 исправляет это. Функция ввода там ведет себя так, как вы ожидали.

22
ответ дан paxdiablo 18 August 2018 в 12:39
поделиться
  • 1
    +1 для примера :-) – user225312 17 February 2011 в 08:20
  • 2
    На самом деле вы не можете назначить что-нибудь в eval. Тем не менее, вы можете назвать любой деструктивный метод, который вам нужен, так что вряд ли лучше. – user 17 February 2011 в 10:09
  • 3
    Или вы хотите использовать Python 3, где input() делает то, что сделал Python 2 raw_input(). – S.Lott 17 February 2011 в 11:53

В Python 2.x input() эквивалентно eval(raw_input()). И eval дает синтаксическую ошибку, когда вы передаете ей пустую строку.

Вместо этого вы хотите использовать raw_input().

4
ответ дан dan04 18 August 2018 в 12:39
поделиться

В Python 2 строки input() оцениваются, а если они пустые, возникает исключение. Вероятно, вы хотите raw_input() (или перейти к Python 3).

5
ответ дан Tim Pietzcker 18 August 2018 в 12:39
поделиться

Если вы используете input на Python 2.x, он интерпретируется как выражение Python, которое не то, что вы хотите. И так как в вашем случае строка пуста, возникает ошибка.

Вам нужно raw_input. Используйте это, и он вернет строку.

2
ответ дан user225312 18 August 2018 в 12:39
поделиться
Другие вопросы по тегам:

Похожие вопросы: