Skip to content

Commit fe6e2ee

Browse files
committed
function
1 parent 86c2360 commit fe6e2ee

File tree

1 file changed

+17
-19
lines changed

1 file changed

+17
-19
lines changed

201.md

Lines changed: 17 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@
4343

4444
**变量在本质上就是一个占位符。**这是一针见血的理解。什么是占位符?就是先把那个位置用变量占上,表示这里有一个东西,至于这个位置放什么东西,以后再说,反正先用一个符号占着这个位置(占位符)。
4545

46-
其实在高级语言编程中,变量比我们在初中数学中学习的要复杂。但是,先不管那些,复杂东西放在以后再说了。现在,就按照初中数学来研究python中的变量
46+
其实在高级语言编程中,变量比我们在初中数学中学习的要复杂。但是,先不管那些,复杂东西放在以后再说了。现在,就按照初中数学的水平来研究python中的变量
4747

4848
通常使小写字母来命名python中的变量,也可以在其中加上下划线什么的,表示区别。
4949

@@ -52,36 +52,36 @@
5252
##建立简单函数
5353

5454
>>> a = 2
55-
>>> y=3*a+2
55+
>>> y = 3 * a + 2
5656
>>> y
5757
8
5858

59-
这种方式建立的函数,跟在初中数学中学习的没有什么区别。当然,这种方式的函数,在编程实践中的用途不大,一般是在学习阶段理解函数来使用的
59+
这种方式建立的函数,跟在初中数学中学习的没有什么区别。当然,这种方式的函数,在编程实践中没有什么用途
6060

6161
别急躁,你在输入a=3,然后输入y,看看得到什么结果呢?
6262

63-
>>> a=2
64-
>>> y=3*a+2
63+
>>> a = 2
64+
>>> y = 3 * a + 2
6565
>>> y
6666
8
67-
>>> a=3
67+
>>> a = 3
6868
>>> y
6969
8
7070

7171
是不是很奇怪?为什么后面已经让a等于3了,结果y还是8。
7272

7373
还记得前面已经学习过的关于“变量赋值”的原理吗?`a=2`的含义是将2这个对象贴上了变量a标签,经过计算,得到了8,之后变量y引用了对象8。当变量a引用的对象修改为3的时候,但是y引用的对象还没有变,所以,还是8。再计算一次,y的连接对象就变了:
7474

75-
>>> a=3
75+
>>> a = 3
7676
>>> y
7777
8
78-
>>> y=3*a+2
78+
>>> y = 3 * a + 2
7979
>>> y
8080
11
8181

82-
特别注意,如果没有先a=2,就直接下函数表达式了,像这样,就会报错。
82+
特别注意,如果没有先 a = 2 ,就直接下函数表达式了,像这样,就会报错。
8383

84-
>>> y=3*a+2
84+
>>> y = 3 * a + 2
8585
Traceback (most recent call last):
8686
File "<stdin>", line 1, in <module>
8787
NameError: name 'a' is not defined
@@ -97,12 +97,12 @@
9797
#!/usr/bin/env python
9898
#coding:utf-8
9999

100-
def add_function(a,b):
100+
def add_function(a, b):
101101
c = a + b
102102
print c
103103

104104
if __name__ == "__main__":
105-
add_function(2,3)
105+
add_function(2, 3)
106106

107107
然后将文件保存,我把她命名为20101.py,你根据自己的喜好取个名字。
108108

@@ -114,10 +114,10 @@
114114

115115
下面开始庖丁解牛:
116116

117-
- `def add_function(a,b)`: 这里是函数的开始。在声明要建立一个函数的时候,一定要使用def(def 就是英文define的前三个字母),意思就是告知计算机,这里要声明一个函数;add_function是这个函数名称,取名字是有讲究的,就好比你的名字一样。在python中取名字的讲究就是要有一定意义,能够从名字中看出这个函数是用来干什么的。从add_function这个名字中,是不是看出她是用来计算加法的呢(严格地说,是把两个对象“相加”,这里相加的含义是比较宽泛的,包括对字符串等相加)?(a,b)这个括号里面的是这个函数的参数,也就是函数变量。冒号,这个冒号非常非常重要,如果少了,就报错了。冒号的意思就是下面好开始真正的函数内容了。
118-
- `c=a+b` 特别注意,这一行比上一行要缩进四个空格。这是python的规定,要牢记,不可丢掉,丢了就报错。然后这句话就是将两个参数(变量)相加,结果赋值与另外一个变量c。
117+
- `def add_function(a, b)`: 这里是函数的开始。在声明要建立一个函数的时候,一定要使用def(def 就是英文define的前三个字母),意思就是告知计算机,这里要声明一个函数;add_function是这个函数名称,取名字是有讲究的,就好比你的名字一样。在python中取名字的讲究就是要有一定意义,能够从名字中看出这个函数是用来干什么的。从add_function这个名字中,是不是看出她是用来计算加法的呢(严格地说,是把两个对象“相加”,这里相加的含义是比较宽泛的,包括对字符串等相加)?(a,b)这个括号里面的是这个函数的参数,也就是函数变量。冒号,这个冒号非常非常重要,如果少了,就报错了。冒号的意思就是下面好开始真正的函数内容了。
118+
- `c = a + b` 特别注意,这一行比上一行要缩进四个空格。这是python的规定,要牢记,不可丢掉,丢了就报错。然后这句话就是将两个参数(变量)相加,结果赋值与另外一个变量c。
119119
- `print c` 还是提醒看官注意,缩进四个空格。将得到的结果c的值打印出来。
120-
- `if __name__=="__main__"`: 这句话先照抄,不解释,因为在[《自省》](./130.md)有说明,不知道你是不是认真阅读了。注意就是不缩进了。
120+
- `if __name__ == "__main__"`: 这句话先照抄,不解释,因为在[《自省》](./130.md)有说明,不知道你是不是认真阅读了。注意就是不缩进了。
121121
- add_function(2,3) 这才是真正调用前面建立的函数,并且传入两个参数:a=2,b=3。仔细观察传入参数的方法,就是把2放在a那个位置,3放在b那个位置(所以说,变量就是占位符).
122122

123123
解牛完毕,做个总结:
@@ -183,9 +183,7 @@
183183

184184
在某国,向来重视“名”,所谓“名不正言不顺”,取名字或者给什么东西命名,常常是天大的事情,在很多时候就是为了那个“名”进行争斗。
185185

186-
江湖上还有的大师,会通过某个人的名字来预测他/她的吉凶祸福等。看来名字这玩意太重要了。“名不正,言不顺”,歪解:名字不正规化,就不顺。这是歪解,希望不要影响看官正确理解。不知道大师们是不是能够通过外国人名字预测外国人大的吉凶祸福呢?
187-
188-
不管怎样,某国人是很在意名字的,旁边有个国家似乎就不在乎。
186+
江湖上还有的大师,会通过某个人的名字来预测他/她的吉凶祸福等。看来名字这玩意太重要了。“名不正,言不顺”,歪解:名字不正规化,就不顺。这是歪解,希望不要影响看官正确理解。不知道大师们是不是能够通过外国人名字预测外国人大的吉凶祸福呢?比如Aoi sola,这个人怎么样?不管怎样,某国人是很在意名字的,旁边有个国家似乎就不在乎,比如山本五十六,在名字中间出现数字,就好像我们的张三李四王二麻子那样随便,不过,有一种说法,“山本五十六”的意思是这个人出生时,他父亲56岁,看来跟张三还不一样的。
189187

190188
python也很在乎名字问题,其实,所有高级语言对名字都有要求。为什么呢?因为如果命名乱了,计算机就有点不知所措了。看python对命名的一般要求。
191189

@@ -289,7 +287,7 @@ python也很在乎名字问题,其实,所有高级语言对名字都有要
289287
8. 调用函数是,函数名后面一定要跟随着括号,有时候括号里面就是空空的,有时候里面放参数。
290288
9. 不要在导入和重载中使用扩展名或路径。
291289

292-
以上各点如果有不理解的,也不要紧,在以后编程中,是不是地回来复习一下,能不断领悟其内涵。
290+
以上各点如果有不理解的,也不要紧,在以后编程中,时不时地回来复习一下,能不断领悟其内涵。
293291

294292
------
295293

0 commit comments

Comments
 (0)