def white():
print
print ("First line")
white()
print ("Second line")
Это один из моих первых сценариев. Когда я нажимаю клавишу «F5», это результат:Функция не печатает ожидаемый результат
First line
Second line
Где ошибка?
def white():
print
print ("First line")
white()
print ("Second line")
Это один из моих первых сценариев. Когда я нажимаю клавишу «F5», это результат:Функция не печатает ожидаемый результат
First line
Second line
Где ошибка?
Если вы хотите, чтобы ваш метод white()
печатал пробелы, вам нужно, чтобы оператор печати на линии два выглядел следующим образом: print(" ")
. Вызов print
без аргументов ничего не сделает.
Дело в том, что 'print' в Python 3 не является ** заявлением **, а является ** функцией **. –
Вы используете Python 3, в котором print
является функцией. В Python 2 print
это утверждение, и ваш код будет вести себя так, как вы ожидаете.
Эта линия:
print
не вызывает функцию. Он просто ищет имя print
. И это не приводит к тому, что на устройстве вывода ничего нет.
Вы, вероятно хотел написать что-то вроде этого, что на самом деле вызывает функцию:
def white():
print()
print ("First line")
white()
print ("Second line")
Выход
First line Second line
Если вы используете Python 3, то «печать» является функцией, а не заявление. Чтобы напечатать строку, вам нужно на самом деле позвонить ей.
def white():
print()
В Python 2 white()
печатает новую строку, в то время как в Python 3 это не так.
$ python2 /tmp/white.py
First line
Second line
$ python3 /tmp/white.py
First line
Second line
Поведение print
изменилось между Python 2 и Python 3. В Python 2 print
является ключевым словом, и писать просто print
печатает новую строку.
В Python 3 print
является функцией и требует скобок. Если вы пишете только print
, то у вас есть инструкция, которая просто извлекает функцию print
, но не вызывает ее, поэтому ничего не происходит. Чтобы получить пустую строку, вам нужно вызова это:
def white():
print()
print ("First line")
white()
print ("Second line")
Ваш 'white' метод не делает ничего ... – Basic
если' def' не работает, вы будете получать NameError, потому что вы ничего не определили. : P – geoffspear
Это действительно нормально, что вы учитесь, но сначала попробуйте использовать Google (там действительно хорошие учебники: http://www.learnpython.org/) – Alvaro