В 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 и Операторы.
Примеры выражений:
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
Заявление из Википедии:
В компьютерном программировании утверждение можно считать наименьшим автономный элемент императива язык программирования. Программа образованный последовательностью одного или нескольких заявления. Заявление будет иметь внутренние компоненты (например, выражения).
В общих терминах: Заявления 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
- Выражение - это оператор, который возвращает значение. Поэтому, если оно может появиться в правой части присваивания или в качестве параметра для вызова метода, это выражение.
- Некоторый код может быть как выражением, так и утверждением, в зависимости от контекста. Язык может иметь возможность различать два, когда они неоднозначны.
Ответ 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
}