Я искал Google и этот сайт уже некоторое время, но я просто не могу найти прямой ответ на эту тему.
Что такое пробел в Python? Я знаю, что это связано с отступом в каждой строке, но я точно не знаю, как его использовать. Как это работает?
Я искал Google и этот сайт уже некоторое время, но я просто не могу найти прямой ответ на эту тему.
Что такое пробел в Python? Я знаю, что это связано с отступом в каждой строке, но я точно не знаю, как его использовать. Как это работает?
Пробелы используются для обозначения блоков. На других языках фигурные скобки ({
и }
) являются общими. Когда вы отступаете, он становится дочерним элементом предыдущей строки. В дополнение к отступу, у родителя также есть двоеточие, следующее за ним.
im_a_parent:
im_a_child:
im_a_grandchild
im_another_child:
im_another_grand_child
Сверху моей головы def
, if
, elif
, else
, try
, except
, finally
, with
, for
, while
, и class
все стартовые блоки. Чтобы закончить блок, вы просто обходитесь, и у вас будут братья и сестры. В приведенных выше im_a_child
и im_another_child
находятся братья и сестры.
Пробелы просто означают символы, которые используются для интервала, и имеют "пустое" представление. В контексте python это означает вкладки и пробелы (это, вероятно, также включает в себя экзотические пространства Unicode, но не использует их). Окончательная ссылка здесь: http://docs.python.org/2/reference/lexical_analysis.html#indentation
Я не уверен, как его использовать.
Поместите его в начало строки, которую вы хотите отступом. Если вы смешиваете пробелы и вкладки, вы, вероятно, увидите фанковые результаты, поэтому придерживайтесь того или другого. (Сообщество python обычно следует за стилем PEP8, который предписывает отступы в четырех пробелах).
Вам нужно создать новый уровень отступа после каждого двоеточия:
for x in range(0, 50):
print x
print 2*x
print x
В этом коде первые два оператора print
являются "внутри" тела оператора for
, потому что они имеют отступ больше, чем строка, содержащая for
. Третий print
является внешним, поскольку он имеет отступы меньше, чем предыдущая (непустая) строка.
Если вы не будете последовательно отступать/отступать, вы получите ошибки отступов. Кроме того, все составные операторы (т.е. Те, у кого есть двоеточие) могут иметь тело, поставляемое в одной строке, поэтому отступов не требуется, но тело должно состоять из одного оператора.
Наконец, некоторые утверждения, такие как lambda
, имеют двоеточие, но не могут иметь многострочный блок как тело.
Он действует как фигурная скобка. Нам нужно сохранить количество пробелов в программе.
Пример 1:
def main():
print "we are in main function"
print "print 2nd line"
main()
Результат:
Мы находимся в главной функции
печать 2-й строки
Пример 2:
def main():
print "we are in main function"
print "print 2nd line"
main()
Результат:
печать 2-я строка
Мы находимся в основной функции
Здесь, в 1-й программе, оба утверждения попадают под основную функцию, так как оба имеют равное количество белых пробелов во время второй программы, первая строка печатается позже, потому что основная функция вызывается после второй строки. Примечание. Вторая строка не имеет пробела, поэтому она не зависит от основной функции.
something
{
something1
something2
}
something3
В Python
Something
something1
something2
something3
Каждый язык программирования имеет свой собственный способ структурирования кода.
всякий раз, когда вы пишете блок кода, он должен быть организован таким образом, чтобы его понимали все.
Обычно используется в условных и классах и определяет определение. Он представляет родителя, ребенка и внука и далее.
Пример:
def example()
print "name"
print "my name"
example()
Здесь вы можете сказать, что example()
является родителем, а другие - дочерними.
Он определяет инструкции и их иерархические порядки выполнения в Python, т.е.
Print instruction1
Print instruction2
Print instruction3
Отображается как
instruction3
instruction1
instruction2