status |
校对 |
ZoomQuiet; 100% |
CDay -5 Python初体验和原始需求
Just use it! don't learn! -- 用之,不学!
剧本背景
嗯嗯嗯,所谓实例故事,就是设计一个具体情景,让代表读者的初学者,同代表作者的行者沟通,从而完成一件事儿,在过程中引导式的展示给大家Python的乐趣;
当然读者不一定什么都不知道,作者可能也高明不过读者, 但是,有个具体的事,也就好具体的讲起来.
好的,这就开始,依照正统说书的,也得来个定场诗什么的活跃一下气氛,先:
那么...
侧有咖啡,后宝石;还是灵蟒最贴心!
最贴心,不费心, 用好还要想清楚.
想清楚,就清楚, 一切清楚才清爽!
要清爽,常重构! 刚刚够用是王道!
人物
- 小白
- 读者一方,没有或是仅有一点编程体验的好奇宝宝,想快速上手使用Python 解决实际问题
- 行者
- 嗯嗯嗯!啄木鸟/CPyUG 等等中国活跃Python社区的那群热心的Python 用户,说话可能有些颠三倒四,但是绝对是好心人们
约定
- 列表
指 邮件列表 -- 一种仅仅通过邮件进行群体异步交流的服务形式,是比BBS 更加古老和有效的沟通方式
详细:: 邮件列表有古老的规范和礼节 访问地址: http://www.woodpecker.org.cn/share/classes/050730-CPUG/usMaillist/ 精简地址: http://bit.ly/43WKcR CPyUG社区有丰富的列表资源 访问地址: http://wiki.woodpecker.org.cn/moin/CPUGres 精简地址: http://bit.ly/vrqUk
- 小结
- 指每日故事最后的独立章节,将当日故事情节中涉及的知识点/领域技术 进行集中简述,以便读者明确要点;
- 练习
- 指每日故事最后的额外章节,和故事内容可能没有关联的几个小实用问题,因为必须使用前述涉及的知识点/领域技术才可以解决,所以,特别列出,建议读者独立进行尝试,加强相关知识的体验.
事件
小白忽然间厌烦了不断的下载安装,破解,却总是找不到称心的软件的生活: “怒了! 什么破软件这么不好使,还要150$!!! 我!要!自个儿写!”
发动
怎么回事儿呢? 小白到列表中一说,原来是买了台刻录机,这一下, eMule 的下载更加是没日没夜了,才一个月刻录出来的光盘就有上百张了,结果想找回一个专辑的MP3,简直不可能了...
想要一种工具:可以不用插入光盘就可以搜索所有光盘的内容
就这么简单的一个愿望,乍就是找不到好用的软件?!
Python!
OK!你们都说Python 好用,那么来尝试一下吧! 我是菜鸟我怕谁?!
- 运行环境
推荐 ActivePython ,虽然此乃商业产品,却是一个有自由软件版权保证的完善的Python 开发应用环境,关键是文档及相关模块预设非常齐备; GNU/Linux 环境中,当然推荐使用原生的 Python.org,主流的自由操作系统发行版都内置了Python 环境,或是对应的软件仓库中都有合适的Python 版本可以选择,安装和使用也非常方便;
详细: PCS3 交互环境之winpy 含有关于ActivePython的简介 http://www.activestate.com/Products/ActivePython/ 商业公司,但是对自由软件支持良多 Python.org http://www.python.org/download/ Python 语言本身的大本营
好了,下载,安装,没什么说的,这再不会,先进行电脑基本操作扫盲,再来学习编程吧...
Hello World!
灰常灰常著名的,但凡是编程语言,第一课都要玩的例程,如果你也想看一看Python 的?
图 CDay-5-1 Hello World 示例
再Show 一个类似的,但是推荐的体验环境 iPython
详细:: PCS2 交互环境之iPython http://ipython.scipy.org/ 是个融合了N多Unix Shell 环境特质的Python 交互式命令行环境 ,推荐使用,你会爱上 TAB 键的;-)
图 CDay-5-2 Hello World 示例(iPython)
是也乎,就是这么简单,告诉Python 打印"Hello World!" 就好.
所以说,对于Python, 勿学,即用就好!
文档
但是丰富的文档还是可以安抚我们面对未知的恐惧的*,推荐以下深入阅读资料,但是不推荐现在就全面阅读
- Python Tutorial -- Python 教程中文版本
在线访问: http://wiki.woodpecker.org.cn/moin/March_Liu/PyTutorial
- 是 CPyUG ~ Chinese Python User Group 中国Python用户组的资深专家,刘鑫长期维护的一部基础文档,也是Python 创造者 Guido.van.Rossum 唯一亲笔撰写的技术文档!
A Byte Of Python -- 简明 Python 教程
在线访问: http://www.woodpecker.org.cn/share/doc/abyteofpython_cn/chinese/index.html
- 沈洁元 翻译的一篇流传甚广的学习 Python 的小书,从初学者的角度,快速说明了一些关键知识点
- 原作者是印度的一位年青的程序员,大家可以到这本书的网站直接和作者沟通:
- Python 标准库 中文版
在线访问: http://www.woodpecker.org.cn/share/doc/Python/_html/PythonStandardLib/
- 由"Python 江湖 QQ 群"共同完成的Python 2.0 内置所有标准模块的说明,是初学者开发过程中必备的参考
ASPN -- Python Reference ~ Activestate 公司Python 参考资料汇总:
原始需求
嗯嗯嗯!安装好了Python环境,在行者的指点下又收集了一批资料的链接,那么小白想真正开始软件的创造了, 但是,行者又告戒:
明晰你的问题,当问题真正得到定义时,问题已经解决了一半
- 因为,程序不过是将人的思想转述为机器可以理解的操作序列而已
- 对于寻求快速解决问题,而不是研究问题的小白和Pythoner们,精确,恰当的描述问题,就等于写好了程序框架,余下的不过是让程序可以运行罢了
好的,于是小白直觉的将软件需求细化了一下:
可以不用插入光盘就可以搜索所有光盘的内容, 等于说...
- 可以将光盘内容索引自动储存到硬盘上
- 可以根据储存到硬盘上的光盘信息进行搜索
仅仅就这两点,也仅此两点的需求,可以?如何?以及怎样通过Python 实现?小白和读者一同期待...
小结
作为开始,今天小白决定使用Python 来解决光盘内容管理,这一实际问题; 安装了python 环境,运行了 "Hello World!" 实例.
OK!轻松的开始,但是,你知道,你同时也获得了免费的绝对强大的科学计算器嘛?
练习
- (1) 计算今年是闰年嘛?判断闰年条件, 满足年份模400为0, 或者模4为0但模100不为0.
- (2) 利用python作为科学计算器.熟悉Python中的常用运算符,并分别求出:
12*34+78-132/6
(12*(34+78)-132)/6、(86/40)**5 并利用math模块进行数学计算,分别求出:
- 145/23的余数
- 0.5的sin和cos值(注意sin和cos中参数是弧度制表示) 提醒:可通过import math; help("math")查看math帮助.
- (3) 找出0~100之间的所有素数.
-- ZoomQuiet 2007-02-20 06:12:54
| 119 | 计算润年给个答案噻,好像有几个条件阿! |
2008-07-16 00:01:26 | ||
| 119 | (86/40)**5 我多作了这个练习!我是小白。终于得到2的5次方了 |
2008-07-16 00:07:23 | ||
| 119 | 求余的例子不好,应该用一眼就知道答案的,这样才叫验证心中所想 7%6 76%25 明白多了。 |
2008-07-16 00:11:30 | ||
| 119 | help(math) 报错 要现import math 小白不知道阿!终于看见了帮助,泪流满面阿! |
2008-07-16 00:15:46 | ||
| 119 | >>> math.cos(math.pi) -1.0 >>> math.cos(13*math.pi) -1.0 >>> >>> math.sin(math.pi) 1.2246063538223773e-16 >>> math.sin(0.5*math.pi) 1.0 >>> math.sin(15*math.pi) 5.3896232095340668e-15 搞不明白高手给说说看! |
2008-07-16 00:23:02 | ||
| bfishadow | all done. defects reported. |
2008-07-24 20:17:40 | ||
| 咖啡小猪 | #!/usr/bin/env python #filename:leap_year a=int(raw_input('Enter years in here:')) def leap(a): if (a%400)==0: return 1 elif (a%100)==0: return 0 elif (a%4)==0: return 1 return 0 if leap(a)==1: print 'This is a leap' else: print 'This is not leap' |
2008-09-04 16:09:04 | ||
| 咖啡小猪 | 上面是我自己写的例子 不知道对不对 还请指教 |
2008-09-04 16:09:46 | ||