现在的位置: 首页 > 综合 > 正文

我教MM编程(暴笑)

2012年11月27日 ⁄ 综合 ⁄ 共 9978字 ⁄ 字号 评论关闭

Stitch 21:53:06
。。。你说的,我都不懂哦。。。我认真听哦,你随意说哦。。。/
Lilo 21:53:28
好。。。。。。。。
 
Lilo 21:53:35
那我们开始说Python。。。。
 
Stitch 21:53:47
我没看啊 。。
Lilo 21:54:12
一点都没看?一个词都没学?……
 
Stitch 21:54:41
恩。。
Lilo 21:54:54
很好!
 
Lilo 21:54:57
行!
 
Lilo 21:54:59
可以!
 
Lilo 21:55:15
那现在开始学,我边学边教你,有问题随时提问!
 
Stitch 21:56:20
但是我不知道该从哪里看哦。。
Lilo 21:56:56
我贴给你吧
 
Stitch 21:57:32
恩。。。

Lilo 22:04:56
郁闷。。。
 
Lilo 22:05:06
我这里一不动鼠标IE就自动关闭。。。
 
Stitch 22:05:12

Lilo 22:05:21
中毒呢
 
Stitch 22:06:16
活该哦,谁叫你不装杀毒软件呢。。哈哈。。。
Stitch 22:06:24
本本?
Lilo 22:12:58
又死机了
 
Lilo 22:13:11
刚才不小心按到键盘上面的待机键。。。
 
Lilo 22:18:45
如果你写过大规模的Shell脚本,应该会有过这样的体会:你还非常想再加一些别的功能进去,但它已经太大、太慢、太复杂了;或者这个功能需要调用一个系统函数,或者它只适合通过C来调用……通常这些问题还不足以严肃到需要用C重写这个Shell;可能这个功能需要一些类似变长字符串或其它一些在Shell脚本中很容易找到的数据类型(比如文件名的有序列表),但它们用C来实现就要做大量的工作,或者,你对C还不是很熟悉。 
 
Lilo 22:20:01
另一种情况:可能你需要使用几个C库来工作,通常C的编写/编译/测试/重编译周期太慢。你需要尽快的开发软件。也许你需要写一个使用扩展语言的程序,但不想设计一个语言,并为此编写调试一个解释器,然后再把它集成进你的程序。 
 
Lilo 22:21:39
遇到以上情况,Python可能就是你要找的语言。Python很容易上手,但它是一门真正的编程语言,提供了比Shell多的多的结构,支持大型程序。另一方面,它提供了比C更多的错误检查,并且,做为一门高级语言,它拥有内置的高级数据类型,例如可变数组和字典,如果通过C来实现的话,这些工作可能让你大干上几天的时间。因为拥有更多的通用数据类型,Python适合比Awk甚至Perl更广泛的问题领域,在其它的很多领域,Python至少比别的语言要易用得多。 
 
Lilo 22:22:13
概括一下,就是Python既简单,又强大,和C没有什么关系,可以从头学习
 
Stitch 22:23:46
5555。。。然后呢。。。
Lilo 22:24:31
然后我还在看
 
Lilo 22:24:48
Python是一门解释型语言,因为不需要编译和链接的时间,它可以帮你省下一些开发时间。解释器可以交互式使用,这样就可以很方便的测试语言中的各种功能,以便于编写发布用的程序,或者进行自下而上的开发。还可以当它是一个随手可用的计算器。
 
Lilo 22:25:02
你知道什么是解析型语言吧?
 
Lilo 22:25:31
Python可以写出很紧凑和可读性很强的程序。用Python写的程序通常比同样的C或C++程序要短得多,这是因为以下几个原因:

高级数据结构使你可以在一个单独的语句中表达出很复杂的操作;

语句的组织依赖于缩进而不是begin/end块;

不需要变量或参数声明。 
 
Lilo 22:27:51
好了,前面都是介绍,下面我们开始真正的学习语言本身!!!!!!!!!!!!!!!!!!!
 
Lilo 22:27:59
Python中的注释以符号“#”起始,一直到当前行的结尾。
 
Lilo 22:28:27
注释就是程序的注解,注释里面的内容不会被解析,是给程序员自己看的

Lilo 22:28:59
# this is the first comment

这就是一条注释,注释里面的文字都被解析器忽略
 
Lilo 22:29:12
明白了么?有什么问题么?
 
Stitch 22:29:41
comment?
Stitch 22:30:04
什么叫注释里面的文字都被解析器忽略?
Lilo 22:30:53
就是python是解析型语言,它一句句的解析每行程序的意思,当遇到注释的时候,就忽略注释里面的文字
 
Lilo 22:31:03
明白了么?
 
Stitch 22:31:54
为什么啊?
Lilo 22:33:48
因为Python语言规定这样
 
Lilo 22:34:04
它规定#后面就是注释
 
Lilo 22:34:22
看到注释里面的文字,它就当作没看见
 
Lilo 22:34:39
也就是注释里面的文字没有实际效果,明白?
 
Stitch 22:34:57
那干啥还写啊 ?
Stitch 22:35:11
真是无聊哦。。
Stitch 22:35:30
comment?是什么意思啊 ?
Lilo 22:35:53
comment就是注释的意思。。。
 
Stitch 22:36:04
哦明白了。。
Lilo 22:36:20
写注释,是为了防止自己以后看不懂这段程序,所以加以说明
 
Stitch 22:37:02
哦。。
Lilo 22:38:21
好,继续。。。
 
Stitch 22:38:48
那为什么自己写的额会看不懂哦 ?

Lilo 22:42:51
因为有的代码是优化过的,比如你计算一个表达式,你会把表达式写成计算的更快的形式,这种形式和数学书上的标准形式不同,你以后自己再看,就很容易看不懂,但是如果你在旁边写上注释,说明这个表达式是由哪个原始的数学表达式转换而来的,以后就很容易理解了
 
Lilo 22:43:03
因为人写的程序多了,时间久了,难免会忘记的
 
Stitch 22:43:57
恩,继续。。
Lilo 22:47:23
下面我们来看一段简单的程序
 
Stitch 22:47:31
恩。。
Lilo 22:47:49
虽然对于我可能很简单,但是对于你可能比较难,毕竟初学
 
Stitch 22:48:09
编程那不是要会英语啊?
Lilo 22:48:14
a, b = 0, 1
while b < 10:
       print b
       a, b = b, a+b
 
Lilo 22:48:26
好了,就是这短短四行程序
 
Lilo 22:49:16
你能看懂多少?
 
Stitch 22:50:42
不懂,,
Lilo 22:52:03
一点都不懂?……
 
Stitch 22:52:08
恩。。
Lilo 22:52:11
总有一句看的懂吧。。。。。。。。。。。。
 
Stitch 22:52:29
不懂要说明什么啊 ?
Stitch 22:52:34
给个方向吧。。
Lilo 22:52:38
好吧,你懂不懂数学上的Fibbonacci数列?
 
Stitch 22:52:52
不懂。。
Lilo 22:54:24
就是这样一列数:
1 1 2 3 5 8...
 
 
Lilo 22:54:38
你发现这列数有什么特点吗?

Stitch 22:54:59
第3个都是前面两个相加起来的。。
Lilo 22:55:19
恩,聪明!!!!!!
 
Lilo 22:55:23
答对了!
 
Stitch 22:55:29
哦。。
Lilo 22:55:59
这个程序的作用,就是用来输出(输出就是显示到屏幕上)这样一列数的前10个数字的!
 
Lilo 22:56:21
a, b = 0, 1
while b < 10:
       print b
       a, b = b, a+b

好了,现在你再看看这段程序,能看懂多少?
 
Stitch 22:58:26
A是0,B是1?
Lilo 22:58:56

 
Lilo 22:58:58
然后?
 
Lilo 22:59:13
很好,你已经开始入门了!
 
Stitch 22:59:39
当B 小于10时。。
Stitch 23:01:28
隐射到B上,A 就是B,而B就是A+B
Lilo 23:02:09
print b的意思就是把b的值显示到屏幕上
 
Lilo 23:02:21
其他的你都回答正确了,很好!
 
Lilo 23:02:40
你说的基本都对,但是我觉得还是有必要较为深入的解释一下
 
Stitch 23:03:34
但是关键的都错了哦。。55。。。我就是不懂那个意思 。。
Lilo 23:06:06
那个是和具体语言相关的,你不知道只是不知道那个名词,而不代表你对语言的理解能力有误,除此之外,你对纯粹语言的理解是完全正确的!已经很强大了!
 
Stitch 23:06:58
这个 不都是数学上的么?
Lilo 23:07:35
用数学问题作为例子,不是很好,不过这个例子可以说明python语言的特点,看起来其实就是英文语句嘛
 
Lilo 23:08:21
a, b = 0, 1
while b < 10:
       print b
       a, b = b, a+b

这里的while,表示一个循环结构,就是后面紧跟的一段代码,系统会不断的执行,直到循环条件不满足

Stitch 23:09:04
那while前面的就是条件嘛。。。
Lilo 23:09:09
在这个例子里面,
print b
a, b = b, a+b
这段代码会被不断的执行,直到b<10条件不再满足
 
Stitch 23:09:38

Lilo 23:09:53
while前面那些,你也可以理解成条件,但是实际上是简单的赋值语句
 
Lilo 23:10:07
无非就是
a, b = 0, 1
 
Stitch 23:10:32
赋值语句?
Lilo 23:10:37
因为计算机执行语言,跟我们人阅读文章一样,是从上到下从左到右的顺序执行的
 
Lilo 23:10:55
所以这里,计算机的执行顺序就是,先执行
a, b = 0, 1
 
Lilo 23:11:07
然后再执行
while...
这里
 
Stitch 23:11:42
恩,然后呢?
Lilo 23:11:42
但是,计算机也允许我们反复执行某一段语句,所以就有了while这样的循环结构
 
Lilo 23:12:31
所以这段程序的真正执行过程就是可以概括为:
先执行a, b = 0, 1,
然后执行while循环里面的语句,直到条件不满足
 
Stitch 23:12:34
恩。。
Lilo 23:13:00
好了,现在再看一遍这段程序,应该很清楚执行顺序了吧?
a, b = 0, 1
while b < 10:
       print b
       a, b = b, a+b
 
Lilo 23:13:11
下面我解释一下什么叫做赋值语句
 
Stitch 23:13:19
恩。。
Lilo 23:13:30
赋值,就是让一个变量等于某个值!
 
Lilo 23:14:01
比如这里
a, b = 0, 1
的意思,
就是分别让a等于0,让b等于1
 
Lilo 23:14:37
而a, b = b, a+b
的意思,就是分别
让a等于旧的b,而让b等于旧的a+b
 
Stitch 23:14:55
恩,知道啊 ?

Lilo 23:15:03
知道了吧?
 
Stitch 23:15:14
恩。。
Lilo 23:15:15
变量是什么意思你懂么?要不要解释一下?
 
Stitch 23:15:44
 就是会动的量咯。呵呵。。
Lilo 23:16:47
恩。。。没错!
 
Lilo 23:16:52
你真聪明!
 
Stitch 23:17:00
哈哈 ,我乱说的呀。。。
Lilo 23:17:05
看来我都没必要罗罗嗦嗦解释半天了!
 
Lilo 23:17:31
就是会变化的量嘛,你可以改变它的值的量!就是如此!
 
Stitch 23:17:36
变量和自便量不是,就是不规则的?
Lilo 23:17:49
恩,和数学里面的意思是一致的
 
Stitch 23:17:55
恩。。
Lilo 23:18:02
都会联系数学了,你真聪明!
 
Stitch 23:18:28
恩。。谢 谢。。
Lilo 23:18:51
那么你今天算是学会了Python语言的基本的东西了!
 
Lilo 23:19:12
因为其它的东西,也无非是这些基本东西的扩展,换汤不换药
 
Lilo 23:19:25
相信其他的你很快就能掌握
 
Lilo 23:19:41
好吧,我们再来总结并复习一下今天的所学好吗?
 
Lilo 23:20:58
然后我给你布置个作业
 
Lilo 23:21:04
???OK?

Lilo 23:22:59
在不在呀?
 
Stitch 23:24:41
好啊,刚才  有事了。。
Lilo 23:25:13
啥事啊?
 
Stitch 23:25:30
现在没事了。。。
Lilo 23:27:05
好,我们来总结一下:

首先,我们今天介绍了Python语言的特点,记住这几点:
1. Python是解析型语言,意味着Python一边读取源程序,一边解析并执行
2. Python简单易学,但是又功能强大
 
Lilo 23:27:23
然后,我们学习了Python语言的一些基本语法
 
Lilo 23:27:32
包括:
 
Stitch 23:28:10
恩。。
Lilo 23:28:47
1. 注释的写法,用#表示注释某一行,例如
# 我是注释里面的语句

这里“我是注释里面的语句”就不会执行
 
Lilo 23:30:03
2. 变量,及变量的赋值。
在Python中,变量无非就是英文字母组成的名称,对变量的赋值,用=符号,例如:
a = 0
b, c = 1, 2
 
Stitch 23:30:25
恩,那刚才那个你给我的那个简短的程序都没有用#字啊 ?
Lilo 23:30:42
当然也可以用了,如果你喜欢,我等下给你例子
 
Stitch 23:31:44
恩。。
Lilo 23:32:10
3. 顺序结构程序设计。
Python通常按照从上到下的顺序执行每一条语句。
比如
a, b = 0, 1
c, d = 2, 3
这里,前面第一行的语句先执行,然后再执行第二行的语句
 
Stitch 23:32:59
恩。。为什么这样啊 ,都不能跳着进行?
Lilo 23:33:48
当然可以跳着执行,这就是:

4. 非顺序结构程序设计中的循环结构

while b < 10:
    a, b = a+1, b+1
 
Stitch 23:34:23
这怎么看就是循环咯?
Lilo 23:34:34
这里while后面的b<10是循环条件,当b<10满足时,就不断执行a, b = a+1, b+1这个语句
 
Lilo 23:34:50
看到while关键字,就是循环语句
 
Lilo 23:34:59
很简单不是么?

Lilo 23:35:46
关于非顺序结构程序设计,就是你所说的跳着执行,还有一种叫做“分支结构”,我们以后再讲,今天学这些已经够多了
 
Lilo 23:36:37
5. 我们学的第一个函数调用,print a
表示输出a的值到屏幕上
 
Stitch 23:37:34
恩。。
Lilo 23:37:36
print就是一个函数,所谓函数,其实就是一个具有功能的操作
 
Lilo 23:38:04
比如print,它的功能就是输出信息到屏幕上
 
Lilo 23:38:40
OK,今天的内容就这么多,已经涉及到了基本程序设计的方方面面!
 
Stitch 23:38:58
恩。。
Lilo 23:39:13
下面我布置一个作业,你要是觉得简单,可以当场做出来,要是觉得难,下次上线的时候交给我
 
Stitch 23:39:26
我是会做啊?
Stitch 23:39:34
我很笨的啊?老大?
Lilo 23:39:50
家庭作业:
编写一段Python程序,输出前10个偶数
 
Lilo 23:40:16
会不会做?
 
Lilo 23:40:25
不会做我可以换一题。。。
 
Stitch 23:41:35
A,B
Lilo 23:41:57
???
 
Stitch 23:42:03
a, b = 0, 1
while b < 10:
       print b
       a, b = b, a+b
Stitch 23:42:11
没打错饿。。
Stitch 23:42:12
==
Lilo 23:42:37
不急,你可以回去再做呀
 
Lilo 23:42:59
要换题的话先告诉我

Stitch 23:44:31
不会。。
Lilo 23:46:00
OK,换题:
 
 
Lilo 23:46:12
家庭作业:
编写一段Python程序,输出前10个奇数
 
Lilo 23:46:27
这题没问题了吧?
 
Stitch 23:46:43
有什么区别哦 。。?
Lilo 23:46:49
。。。。没区别。。。。
 
Lilo 23:47:06
你既然知道没区别,说明你其实会做了。。。
 
Stitch 23:47:39
靠,,我就是不会 ,才说没区别的啊?
Lilo 23:48:11
好吧,家庭作业布置如下:
请任选一题完成:
A. 编写一段Python程序,输出前10个偶数
B. 编写一段Python程序,输出前10个奇数
C. 编写一段Python程序,输出前12个自然数
 
Lilo 23:49:10
这样总行了吧?给你一天时间充分思考。。。
 
Lilo 23:49:24
不行你可以上网查查参考资料
 
Stitch 23:50:13
A,B,C。。。=1,2,3。。。
Lilo 23:50:34
然后呢?如何输出?
 
Lilo 23:52:50
你这样写,那假如我要求输出前一百万个自然数怎么办?你也一个个去写么?……
 
Stitch 23:53:20
对啊,本来就是不可以啊 ?

 

Stitch 23:53:41
打英文撒 ?

Lilo 23:53:43
是嘛,所以提示一下,你要用到循环
 
Stitch 23:54:01
WHILE 。。?

Lilo 23:54:04

 
Stitch 23:54:32
那我 还没写完啊 。。

Stitch 23:54:48
那只是开头不是。。。
然后就ENG
Stitch 23:54:57
ENTER 了

Lilo 23:55:31
你参考一下今天的那个例子,稍微改变一下就可以了,很简单的
 
Lilo 23:55:47
a, b = 0, 1
while b < 10:
       print b
       a, b = b, a+b
 
Stitch 23:56:03
我 有啊,一直在参考啊,所以才会又发给你了不是 ?

Stitch 23:56:34
上面为什么要对B进行输出啊 ?

Lilo 23:56:51
因为b是我们要的值咯
 
Stitch 23:57:06
为什么只要B?

Lilo 23:57:15
每次循环,b都是前两项的和
 
Lilo 23:57:37
a虽然也是,但是a是从0开始
 
Stitch 23:58:13
W ZD LE 。。。

Lilo 23:58:23
所以如果输出a,那么结果就变成
0 1 1 2 3 5 8...
 
Stitch 23:59:07
a, b = 0, 1
while b < 10:
       print b
       a, b = b, a+b那这样也是对的不是?

Lilo 23:59:40
你有改么?……
 
Lilo 00:00:32
要不要我写一题给你看看,另外两题留给你做作业?
 
Stitch 00:01:14
A,B=1,2
WHILE B

PRINT B
A,B=B,A+1
Stitch 00:01:48
不是啊。我是说所以如果输出a,那么结果就变成
0 1 1 2 3 5 8...那这样也是对的不是?

Stitch 00:02:02
WHILE B?

Lilo 00:02:17
不对,因为Fibbonacci数列定义是从1开始。。。数学家规定的我也没办法。。。
 
Stitch 00:02:42
哦。。

那我对那个不了界,那怎么办 啊?


Lilo 00:03:00
好吧,我写第三题给你看看,你思维不要那么死嘛,虽然叫你模仿例子,但是你没必要照搬啊。。。
 
Stitch 00:03:14
5555。。。

Lilo 00:03:18
其实非常简单,远远没有你写的那么复杂,虽然你写的答案也对
 
Stitch 00:03:25
选偶数的吧。。。

Lilo 00:04:11
不行,偶数的更难,留给你家庭作业,哈哈。。。。
 
Stitch 00:04:32
技术的八。。
。。。5555。。。。那
Lilo 00:06:31
# 输出前12个自然数的Python程序
a = 0  # 数学界新的规定,0也是自然数
while a < 12:
    print a
    a = a + 1
 
 
Lilo 00:06:55
这里面还用到了注释,呵呵
 
Lilo 00:07:11
根本不用你那么复杂。。。
 
Stitch 00:07:17
。。。刚才还被我排除了哦。。。

Lilo 00:07:19
一个变量就足够了。。。
 
Lilo 00:07:38
说明你其实自己会写嘛!只是不够自信!不敢相信居然如此简单!
 
Lilo 00:08:02
事实上就是如此简单,哈哈
 
Stitch 00:08:20
恩,那为什么是小雨12啊?是自定的么 ?

Lilo 00:09:01
对啊,a < 12这是我们自己定义的循环中止条件,当这个条件不满足时,循环就中止
 
Lilo 00:09:36
这里我们只输出前12个自然数,就是0...11嘛,所以是a < 12
 
Stitch 00:09:47
所以只限制在12个书的范围内吧?

Lilo 00:09:53
当a等于12的时候,就不再执行循环里面的语句了
 
Lilo 00:09:59

 
Stitch 00:10:09
。。。

Lilo 00:10:18
现在明白了没有?
 
Lilo 00:10:42
奇数偶数的应该no problem了吧?
 
Lilo 00:11:02
家庭作业布置如下:
请任选一题完成:
A. 编写一段Python程序,输出前10个偶数
B. 编写一段Python程序,输出前10个奇数
 
Stitch 00:11:16
A. 编写一段Python程序,输出前10个偶数
B. 编写一段Python程序,输出前10个奇数
C. 编写一段Python程序,输出前12个自然数
那现在也是只用一个A ME  ?

Lilo 00:12:19
有好几种写法,不同写法用的变量数目不同,你自己看着办
 
Lilo 00:12:31
当然也可以只用一个变量
 
Stitch 00:13:20
a = 0  # 数学界新的规定,0也是自然数
while a < 18
    print a
    a = a +2

Lilo 00:14:04
错误。。。
 
Lilo 00:14:12
知道错在哪里么?
 
Lilo 00:14:18
中止条件不对
 
Stitch 00:14:26
EN  ,W  Z  、

Stitch 00:14:34
我知道啊啊。。。

Lilo 00:15:04
正确的答案应该输出0....18,而你这段程序只输出0...16,18没掉了
 
Stitch 00:15:25
那就是要到20?

Lilo 00:15:38
有必要么?……
 
Lilo 00:15:50
到19不就够了,虽然20也对。。。
 
Stitch 00:15:53
 
Stitch 00:16:04
恩,那也是哦。。

Stitch 00:16:14
他到了19就不做事情了吧。。

Lilo 00:16:26
恩,就是告诉你,能简洁尽量简洁,能19表示就不要用20

Lilo 00:16:33
没错
 
Lilo 00:17:31
当然,不管是19还是20,虽然都是对的,但是有另外一种更好的做法:

a = 0
while a <= 18
    print a
    a = a +2
 
Lilo 00:17:47
呵呵,不知道了吧,循环的条件可以是任意格式的
 
Lilo 00:18:17
所以你可以用<=,就是“小于或者等于”的意思
 
Lilo 00:18:28
和数学里面一样的
 
Lilo 00:19:03
哈哈哈哈。。。。。。
 
Lilo 00:19:09
知识就是力量啊。。。。。。
 
Stitch 00:19:22

a ,B= 0 ,1 # 数学界新的规定,0也是基数
while B< 18
    print
    B = B+2
Lilo 00:20:02
你的print,后面没跟上print的内容啊。。。
 
Stitch 00:20:11
B

Stitch 00:20:18
WANG LE DA 。

Lilo 00:20:45
这段是输出奇数的么?
 
Stitch 00:20:46
是B?忘了打了?

Stitch 00:21:00
==
Lilo 00:21:25
中止条件又错了。。。呵呵
 
Lilo 00:21:36
而且,你的a没有用上,何必写它呢?
 
Stitch 00:21:56
==
Stitch 00:23:42
WHILE B〈17
A,B=0,B+2
Stitch 00:24:34
PRINT B
Lilo 00:24:41
这个更不对。。。

Lilo 00:24:53
正确的其实很简单,不用你这么复杂。。。
 
Stitch 00:25:26
==

Lilo 00:27:30
???thinking?
 
Lilo 00:27:35
我有点困。。。
 
Stitch 00:27:39
a = 0#基数
while a <= 18
    print a
    a = a +1
Stitch 00:28:07
但是这样1+1不就 等于2了 ?

Lilo 00:28:34
什么1+1?
 
Stitch 00:28:56
不知道。。
Lilo 00:29:09
 。。。
 
Stitch 00:29:21
我不会哦。。。5。55。。。
Lilo 00:29:50
好吧,给你答案,这样就相当于三题的答案我都告诉你了,所以我要给你再布置一题
 
Lilo 00:29:54
# 输出前10个奇数(从1...19)
a = 1
while a <= 19
    print a
    a = a+2
 
Stitch 00:29:55
我不玩咯。。呵呵。。
Stitch 00:30:28
886。。。

Lilo 00:30:36
既然入门了,那么就继续学下去嘛,能学多少学多少
 
Stitch 00:31:03
886。。。

抱歉!评论已关闭.