外贸产品推广网站,html5模板下载,wordpress 改成中文,工商登记信息查询平台类比#xff1a;函数是一个准备好执行任务并给出答案的可克隆助手。任务由函数的参数定义#xff08;括号内的内容#xff09;。让我们重写这些名称以赋予它们语义意义#xff08;即说明我们期望的名称#xff09;。在def isXGreaterThanY(.....
在这里#xff0c;任务的…类比函数是一个准备好执行任务并给出答案的可克隆助手。任务由函数的参数定义括号内的内容。让我们重写这些名称以赋予它们语义意义即说明我们期望的名称。在def isXGreaterThanY(.....
在这里任务的名称是“X是否大于Y”。如果你走到你的可克隆助理那里问“X大于Y吗”除非你告诉他们X和Y是什么否则你的助手将无法完成你想要的。在
^{pr2}$
现在我可以开始解释你可能错在哪里了。在这一级别的编程中一个错误是仅仅因为你在网页上看到了一些几乎是你想要的东西你可能会被诱惑去复制它的语法并试图篡改语法希望它能正常工作。这是行不通的。这不是编程的重点。在
一些日常生活中的人认为编程是关于解决你的问题的神奇的词汇我不是在暗示你这么想。事实并非如此。相反编程是经典的能够制造自动装置这些小助手来为你操作信息。计算机擅长死记硬背、机械地处理信息。我们希望我们的任务是可复制的所以我们给它们起一个名字比如“X大于Y吗”什么是函数在eem.a中称之为“程序”。在
让我们想想你写的def isXGreaterThanY(x, y):
if x y:
return True
else:
return False
程序就是关于控制流的。过程的每个部分都是一个语句或表达式在这个级别上可以将其视为同一件事。一个过程通常有一个答案每当控制流遇到“return answer”语句时整个过程都会停止任务完成您的魔法助手会返回给您并在一张纸上写上ANSWER。返回答案的过程被称为“函数”这几乎总是我们想要的在幕后产生丑陋的“副作用”的过程通常不是我们想要的。在
下面我将说明从语法我们写下的内容到机械动作的想法。一个过程是由句法表达式组成的每个表达式可以有子表达式等我们有if __ then __ else __语句它由三个子表达式组成
x y的查询子句它包括
作用于的_ _运算符
变量x
变量y
return True的“then”子句包括
return语句返回
文本布尔值True
return False的“else”子句包括
return语句返回
文本布尔值False
这个“语法树”就是计算机看到的。现在编程语言将含义与这些表达式关联起来它知道如何在所谓的“控制流”中导航这棵树。特别是在编程语言Python中我们知道当我们看到if-then-else语句时我们首先检查测试条件。在本例中我们查看测试条件并注意到这是一个裸比较我们询问CPU它会返回True或False。如果比较结果为真我们将执行“then”子句该子句将返回即递给您一张带有答案True的纸条。如果比较结果是错误的我们会做“else”子句并给你一张纸条上面写着答案False。在
这样每当你问你的助手“X大于Y吗”其中X。。。而Y…”你的助手会实际上看着你在过程中指定的指令并在助手的眼睛始终盯着一个指令的情况下进行解释一次表达式“控制流”可以看作是突出显示或带下划线的“活动”子表达式即控制流是助手在查看代码时眼睛所走的路径。在这种特殊情况下您的过程从if-then-else子句开始它将其解释为控制流中的一个分支点一个岔路口它采取适当的分支在这种情况下将发现两个“return”语句中的一个然后尽职地给您一张纸条。在
控制流由特殊控制流语句如if-then-else背后的语义含义决定。其他控制流结构的解释不同。for x in range(7): ...将假装x是1并执行...假设x是2并执行...依此类推
一个while True: ...将永远循环反复执行...。在
一个breakbreak-out的意思是“停止while循环”或“过早地停止for循环”。在
continue表示“跳过while/for循环中...的其余部分但继续循环”。在
您可以使用上述函数和您自己的自定义函数来实现您自己的控制流这就是所谓的递归此答案范围之外的另一个主题。在
简而言之这就是控制流和命令式编程。在
顺便说一句这样做比较好def isXGreaterThanY(x, y):
# this is a comment
# you can insert a print xy here, or print(xy) depending on your version of python
return (x y)
表达式x y在输入if-then-else语句之前计算结果为True/False。所以你可以返回表达式作为答案。但是到那时你的函数非常简单你不会写出函数的答案#print isXGreaterThanY(1,3)
print (1 3)