В чем разница между выражением и выражением в Python?

В Python в чем разница между выражениями и выражениями?

Ответ 1

Expressions содержат identifiers, literals и operators, где операторы включают арифметику и булевы операторы, функция оператор вызова () оператор подписки [] и тому подобное, и может быть сведено к некоторому "значению", которое может быть любым объектом Python. Примеры:

3 + 5
map(lambda x: x*x, range(10))
[a.x for a in some_iterable]
yield 7

Заявления (см. 1, 2), с другой стороны, это все, что может составить линию (или нескольких строк) кода Python. Обратите внимание, что выражения также являются операторами. Примеры:

# all the above expressions
print 42
if x: do_y()
return
a = 7

Ответ 2

Выражение - из моего словаря:

выражение: математика коллекция символов, которые совместно выражают количество: выражение для окружность круга равна 2πr.

В общих выражениях: Выражения производят хотя бы одно значение.

В Python выражения широко освещаются в Справочник по языку Python. В целом выражения в Python состоят из синтаксически-юридической комбинации Atoms, Primaries и Операторы.

Выражения Python из Википедии

Примеры выражений:

Literals и синтаксически исправить комбинации с Operators и встроенные функции или вызов пользовательских функций:

>>> 23
23
>>> 23l
23L
>>> range(4)
[0, 1, 2, 3] 
>>> 2L*bin(2)
'0b100b10'
>>> def func(a):      # Statement, just part of the example...
...    return a*a     # Statement...
... 
>>> func(3)*4
36    
>>> func(5) is func(a=5)
True

Заявление из Википедии:

В компьютерном программировании утверждение можно считать наименьшим автономный элемент императива язык программирования. Программа образованный последовательностью одного или нескольких заявления. Заявление будет иметь внутренние компоненты (например, выражения).

Операторы Python из Википедии

В общих терминах: Заявления Do Something и часто состоят из выражений (или других операторов)

Справочник по языку Python охватывает Простые заявления и Составные выражения широко.

Различие между выражениями "Выражения делают что-то" и "выражения производят значение" может различаться, однако:

  • List Comprehensions считаются "выражениями", но у них есть петлевые конструкции, а также Do Something.
  • if обычно является выражением, например if x<0: x=0, но вы также можете иметь условное выражение как x=0 if x<0 else 1, которое выражения. В других языках, таких как C, эта форма называется оператором типа x=x<0?0:1;
  • Вы можете написать собственные выражения, написав функцию. def func(a): return a*a является выражением при использовании, но составлено из утверждений, если определено.
  • Выражение, возвращающее None, является процедурой в Python: def proc(): pass Синтаксически вы можете использовать proc() в качестве выражения, но это, вероятно, ошибка...
  • Python немного более строг, чем говорят, что C - это различия между выражением и выражением. В C любое выражение является юридическим утверждением. Вы можете иметь func(x=2); Это выражение или выражение? (Ответ: выражение, используемое как выражение с побочным эффектом.) Форма func(x=2) является незаконной в Python (или, по крайней мере, имеет другое значение func(a=3) устанавливает именованный аргумент a в 3)

Ответ 3

Хотя это не относится к Python:

An expression оценивает значение. A statement что-то делает.

>>> x = 1
>>> y = x + 1     # an expression
>>> print y       # a statement (in 2.x)
2

Ответ 4

Заявления представляют собой действие или команду, например, заявления печати, инструкции присваивания.

print 'hello', x = 1

Выражение представляет собой комбинацию переменных, операций и значений, которые дают значение результата.

5 * 5 # yields 25

Наконец, выражения выражения

print 5*5

Ответ 5

  1. Выражение - это оператор, который возвращает значение. Поэтому, если оно может появиться в правой части присваивания или в качестве параметра для вызова метода, это выражение.
  2. Некоторый код может быть как выражением, так и утверждением, в зависимости от контекста. Язык может иметь возможность различать два, когда они неоднозначны.

Ответ 6

Выражение - это то, что можно свести к значению, например "1+3" или "foo = 1+3".

Легко проверить:

print foo = 1+3

Если это не сработает, это оператор, если это так, это выражение.

Другим утверждением может быть:

class Foo(Bar): pass

поскольку его нельзя свести к значению.

Ответ 7

Выражение - это что-то, в то время как оператор делает что-то.
Выражение также является выражением, но оно должно иметь возврат.

>>> 2 * 2          #expression
>>> print(2 * 2)     #statement

PS: интерпретатор всегда выводит значения всех выражений.

Ответ 8

ЗАЯВЛЕНИЕ:

Оператор - это действие или команда, которая что-то делает. Пример: If-Else, Loops..etc

val a: Int = 5
If(a>5) print("Hey!") else print("Hi!")

ЭКСПРЕССИЯ:

Выражение - это комбинация значений, операторов и литералов, которая что-то дает.

val a: Int = 5 + 5 #yields 10

Ответ 9

Оператор содержит ключевое слово.

Выражение не содержит ключевое слово.

print "hello" является оператором, потому что print является ключевым словом.

"hello" - это выражение, но сжатие списков против этого.

Ниже приведен оператор выражения, и это истинно без понимания списка:

(x*2 for x in range(10))

Ответ 10

Выражения:

  • Выражения формируются путем объединения objects и operators.
  • У выражения есть значение, которое имеет тип.
  • Синтаксис для простого выражения: <object><operator><object>

2.0 + 3 - выражение, которое оценивается как 5.0 и имеет тип float, связанный с ним.

Заявления

Заявления состоят из выражения (выражений). Он может охватывать несколько строк.

Ответ 11

Python вызывает выражения "выражения", поэтому вопрос, возможно, не полностью сформирован.

Оператор состоит из почти всего, что вы можете сделать в Python: вычисление значения, назначение значения, удаление переменной, печать значения, возврат из функции, создание исключения и т.д. Полный список здесь: http://docs.python.org/reference/simple_stmts.html#

Оператор выражения ограничен вызывающими функциями (например, math.cos(theta) "), операторы (например," 2 + 3 ") и т.д., чтобы получить значение.

Ответ 12

Я думаю, что выражение содержит операторы + операнды и объект, который содержит результат операции... например.

var sum = a + b;

но оператор - это просто строка кода (это может быть выражение) или блок кода... например.

fun printHello(name: String?): Unit {
if (name != null)
    println("Hello ${name}")
else
    println("Hi there!")
// `return Unit` or `return` is optional

}