我一直认为嵌套是将一个对象嵌入到同一类型的另一个对象中。
但我最近被告知嵌套也意味着嵌入不同类型的对象,因此以下有三个嵌套级别。
def my_function():
# first level of nesting ???
while expr:
# second level of nesting ???
if expr:
# third level of nesting ???
do_something()
else:
# third level of nesting ???
do_something_else()
我在网上搜索过但无法找到任何简明的答案。
答案 0 :(得分:2)
至少有两种嵌套定义:
将一个物体放在另一个物体内可以被认为是嵌套(想想俄罗斯嵌套娃娃),但它通常被称为组合。我猜这是你所指的将一个物体放在另一个物体内;虽然类型不要求属于同一类型,但除非您定义递归数据结构,否则通常不会。
您在代码段中显示的内容也可以被视为嵌套,因为您在其他表达式/语句中包含表达式/语句。鉴于它的Python,它也可以被认为是缩进级别,因为缩进级别表示Python中的嵌套级别。
答案 1 :(得分:0)
嵌套意味着将一块代码放在另一个块中。 以下是嵌套块的示例。
if True:
a = 0
a = a + 5
if a < 10:
a = 20
for i in [1, 2, 3]:
print i
try:
b = i + 10
except:
print 'bye'
在上面的代码中,块如果a&lt; 10 嵌套在块下如果为,同样尝试和除了块嵌套在块下循环