为非程序员准备的简洁Python语言教材


为非程序员准备的简洁Python语言教材,欢迎到http://code.google.com/p/hashao/提问。
Python 的中文意思是巨蟒,大蟒蛇。

计算机编程主要概念

计算机语言编程的主要内容就这些:数字,文字,循环,公式,变量

  • 数 字: 1, 2, 3, 5.6, 120, 32.4, 3.1415926, -3, -0.123
  • 文字: 你好,我好,你太牛了,很黄很暴力,这类的文字。一般用双引号(“)或者单引号(‘)括起来。术语叫字符串 ,就是一堆字符,串起来。
  • 循环: 循环(loop)就是重复的做一件事。计算机是一个很笨的机器,基本上只会做加,减,乘,除,大于,小于,等于和循环这种简单的工作。编程就是把复杂的问 题,拆成简单的单元让它重复。

幸亏有下面讲到的公式,所以很多较复杂的问题已经有了解决方法,我们只是重 复的套用别人的解决公式就可以了,不用拆得太细。

Python 语言最大的优势,就是这个语言中包含了大量解决常见问题的公式,你想干的事,基本上都有人帮你干了,你只是需要把他们组织,捆绑起来就可以了。比如下载文 件的公式,分析网页内容的公式,压缩文件的公式,处理电子邮件的公式等等。

  • 公式: 就像数学公式 (a+b)2= a2 + 2ab + b2 这种。算的时候带入具体数值,比如:(3+4)2 = 32 + 2*3*4 + 42 = 9+24+16 = 49 。前面的 (a+b)2 就是我们的公式名(当然编程时,我们会用一些比较容易明白的词组做为公式名,比如“和的平方”这种,英语或者拼音都可以),他需要两个参数a,b;后面的 a2 + 2ab + b2 是具体怎么算出来的步骤,这就是我们的公式内容。

在 计算机里,公式的术语叫“函数”或者“方法”。我们定义一个函数,就是定义一条公式,用的时候,拿来参数a,b什么 的,套一下公式就行了。

为了程序的结构清晰,我们往往会定义很多函数。把复杂的问题分成很多小问题,每个小问题放到一个函数 里,然后在解决复杂问题的函数里,使用这些小问题函数解决大问题。更重要的是我们可以大量的使用别人写好的函数来解决自己的问题。

 

函数的作用是让程序结构清晰,而且可以在不同的地方重复套用。

  • 变量: 就是上面的a,b这种可以代表任何值,可以放进不定值的单词。我们用变量来存储我们程序中用到的各种数字,文字,公式。所谓参数,就是定义公式时候用到的 变量,就叫参数,换个马甲而已。

换成术语,我们有:

数字 (number) => 数字
字符串 (string) => 文字
循环 (loop) => 循环
函数/方法 (function/method) => 公式
变量 (variable) => 变量

到这里,基本上编程就没什么可学得了。剩下的就是掌握各种编程语言特定的函数和循环的书写格式,再掌握了别人已 经写好的函数的用法,组合起来就得了。

基本编程PythonTutor#%E5%9F%BA%E6%9C%AC%E7%BC%96%E7%A8%8B">

最基本的python程序:

print ("世界,你好!")

存 到文件 hello.py 里,然后命令行下输入 python hello.py 就可以看到结果了。

这里就用到了 函数和字符串,在屏幕上输出一行:世界,你好!

Python 里函数的用法是:函数名(参数1, 参数2)

这 里 print 是函数;在屏幕上打印内容,”世界,你好!”是参数。

学会怎么用函数了,再学会定义函数的格式,就差不多了。

定义函数

def a_b_pingfang(a, b):
    c = a**2 + 2*a*b + b**2
    return c

我 们定义一个(a+b)2的函数,def 是英语 define 的缩写,意思是定义函数,定义公式。

第 1 行就是说我们要定义一个函数名叫 a_b_pingfang 的函数,用它的时候,需要两个参 数a 和 b。尾巴上有个冒号,冒号的意思是说:“下面的一段就是公式定义了,要注意了”。

计算机编程里,* 代表乘法,/代表除法,** 代表乘方, b**2 就是 b 的二次方。

注意: Python 是用 缩进空格 来表示段落的,冒号(:)来表示段落开始。

第 2 行先缩进4个空格,说明下面缩进4格的,都是同一段落。用来具体计算上面的定义的公式的。把 a2+2*a*b+b2 的计算结果,放到c里。

c类似于a,b,都是表示一个变量,它可以用来存放数字,文字,甚至函数。这里它存放的是用a,b计算后得到的 结果。因为不是在函数名里,所以术语叫做“变量”,在函数名里,就叫参数了。

“变量”就是用一个单词来代表一个可以变化的量的。单词里可 以有字母,数字和下加线(_),数字不能打头。

第 3 行,把存在c里的结果,传回给函数的使用者。

return 命令的意思,就是立即结束函数的执行,把return后面的值传给调用者,可以传回多个值。

现在可以使用这个公式了,我们叫调 用函数

ping2 = a_b_pingfang(2, 3)

ping2 里存放了 a_b_pingfang(2, 3)得到的结果,也就是上面 return c 这句,把 c 的内容,传给了外面的ping2。

把结果打印出来:

print(ping2)

全 部程序是:

def a_b_pingfang(a, b):
    c = a**2 + 2*a*b + b**2
    return c
ping2 = a_b_pingfang(2, 3)
print(ping2)

存 到 test2.py ,跑 python test2.py 就可以看到输出 25。

循环 (loop)

当然还有循环,怎么让程序重复的做事?我们有 while(当…), for(对于…) 命令来进行循环控制。

a = 0
while a < 100:
   a = a + 1

这 个循环说,当 a < 100 的时候,把 a 增加 1,然后重复。当 a 等于100了,就结束了。

我们有 <, >, ==, <=, >=, != 来判断大于,小于,等于,小于等于,大于等于,不等于。

还有 and, or, not 来进行逻辑运算,所谓逻辑运算,就是测试已有判断之间的关系的:

a == 1 and b != 2 来测试这两个判断是否同时成立。 a == 1 or b != 2 来测试这两个判断里是否有至少一个成立。 not a == 1 来测试这个判断是否是错的。错的就是对的,对的就是错的,颠倒黑白。

我们还有 break(中断) 来打断循环,和 continue(继续) 来立刻回到循环开始,也可以用 if(是否) 命令来进行判断:

a = 0
while True:
    a = a + 1
    if a >= 100:
        break

这 里 True 表示总是正确,相对的是 False 表示错误。这一段是说一直执行,因为 while 总是正确。下面在 if 处判断a是否大于等于100,如果是,那么执行 if 下的段落,这里我们打断了循环。

for 循环是利用下面介绍的的列表数据结构对列表进行循环。

Python 数据概念

下面具体到python特殊的规定,它有几个特殊的存储数据的格式。

  • 列 表: list
  • 元组: tuple
  • 字典: dict (dictionary)

列表 (list)

相关内容

    暂无相关文章

评论关闭