好嘛,立即开始 =============== Python编程环境的搭建: ---------------------------------- 好呐,说开始就开始,咦?可是该怎样开始呢?该怎样才能开始使用计算机撰写 Python 程序呢?撰写 Python 程序需不需要什么工具呢?小白又遇到了难题。 这时,小白想到了CPUG邮件列表,“对,我不是已经加入了CPUG了吗?为什么就不能到CPUG上问问上面的行者呢?反正我是小白我怕谁?” 小白迅速在邮件列表中发了贴:“要开始Python编程到底需要什么工具呢?” 热心的行者们很快就作出了回答 : “一般的程序员如果想要开始计算机语言的编写时一般都需要一个编译器和代码编辑器,但是由于Python是门脚本语言,脚本语言优点之一就是不需要编译,测试功能直接就包含在代码编辑器中,代码编辑器在Python中被称为Python shell(IDLE)一般一 个完整的Python语言安装包包含以下内容: IDLE(Python Gui) 代码编辑器(包含测试环境和交互式编程环境,就是可以对程序进行一句一句的运行,能非常方便的看到程序执行过程) Python(command line) 和IDLE(Python Gui)一样包含一个交互式编程环境,不过是在命令行中实现。 Module Docs 模块文档,提供模块函数的查找,浏览功能,使用的是Python内置的图形界面(GUI)模块Tk(Tkinter)实现(将会在第三章讲解) Python Manuals Python内置帮助文档,可以当做一本教程,只不过是全英文的。。。 至于Python安装包在哪?这个…你上网找找就可以了。 ” “找找就可以了?”小白必应了一下Python,发现头一个链接就是:www.python.org,python.org?,这估计就是python官网了吧。 “哼哼,什么也不说了,马上进去看看?,咦,这………? .. image:: ../_static/snap/zh_download.PNG “怎么英文的“Downloads”下面还有一个中文的“下载”??中国人冲向世界了???” “喀哒,点击下载一看,哇,抓狂,咋那么多 Python 版本呐?该下哪个呢?小白又想到了列表,“对,马上发问 去…”: 行者迅速作出回答:“ 建议下载Python 2.7.1 这个版本,因为: - 支持的库(就是支持的模块)多,很多库都是在 2.x 系列上开发的,所以,作为 2.x 的最后一个系列,2.7 仍然支持绝大部分的 Python 2.x 库,同时还带有 3.x 系列的特性,衔接性较好。 - 对系统的兼容性最好 “ “既然大家都说 2.7.1 好,那么好,就下 2.7.1 这个版本!”小白使用 Windows 操作系统,下载对应操作系统的Python版本--进行安装 嗯?安装?俺可不懂鸡肠文啊,不管了,一路点 Next……………………………… .. image:: ../_static/snap/install.PNG “喀喀喀,安装完成,Python编程环境就这么安装完成了?” “可是,桌面上好像没有任何有关Python的程序图标呐?!!嗯嗯?会不会是跑到可“开始”菜单里了?“ 小白点击“开始”,“咦?提示有新安装的程序呐”—咔咔,小白兴奋的点击“所有程序”—“嗯?有一个叫Python 2.7.1的文件架” .. image:: ../_static/snap/4opinist.PNG “哇,这不是行者们所说的貌四个组件吗??”安装成功了,小白兴奋得几乎要跳起来,可是,一个新的问题又难住了小白:怎样去使用这些东西去写出一个程序来呢?? 使用、运行与调试 ----------------- 小白又想着要去问行者,可是,突然脑中有一个声音对自己说:“就是要发挥自个儿探索的精神,中国人就是自个儿探索的精神极度缺失,导致什么都是山寨的呐,我作为新一代的中国人,一定要改变这个局面。对,咱自个儿探索去”小白坚定地想着。 “程序是什么?就是用代码拼凑而成的!那么,要是要写代码的话需要什么东西呢??”小白努力想着“对,以前行者们好像提到过一个叫:代码编辑器的东西,应该就是用它”,小白迅速翻查原来的邮件“哦?原来代码编辑器是Python shell(IDLE)呐,唉,记性不好总是忘,这下可记住呐,嗯,就是这个IDLE,好,咱打开看看” :: Python 2.7.1 (default, Nov 27 2010, 18:30:46) [MSC v.1500 32 bit (Intel)] on win32 Type "copyright", "credits" or "license()" for more information. >>> “哇,真的出现了一个可以一句句输入程序的界面”小白兴奋道。 “可是,接下来该怎么办呢?俺还是一句代码也不会写呐。”小白又苦恼了。 这时,舅舅走了过来“呵,侄子,不错嘛,这么快就已经安装好Python的编程环境了??我以为你感到困难已经放弃了呢.这小子不错,还是有点耐力的吗!” “哼,谁像你那样没有耐力啊,看,总是和女朋友分手,最近那个是不是又给分了?”小白不服气道。 “你这小子还有胆量教训老子,哼,以后别在想我给你指导什么程序”说完扭头便走。“唉唉,别走呐,Python的代码怎么写我还不知道呐” “你就自个儿探索去吧,给你个暗示:知识都可以在网上找到。我可要去泡妞去了,可不能让你这小子看不起对不,走了,BeyBey”说完转眼间就消失在楼梯口。 “靠,这啥人啊,怪不得找不到老婆....“小白气呼呼的想。这下可糟了,没有了舅舅的指导,还留下了个什么暗示:知识都可以在网上找到。 咦?这句话的意思.....不会真的让我去网上找吧?网上的东西如山如海那么多,你可是让我怎么找啊? 哎,只好去网上找了,没有了舅舅,这程序还是要学的,好,咱就上必应搜搜。 小白最喜欢的搜索引擎就是必应。“中国的度娘啥也搜不到,google是强,但是却跑香港去了,这分明是看不起我们中国人吗??”这是小白经常挂在嘴边的一句话。“只有必应俺对他的印象还不错,微软出的,技术过关!!” 小白迅速打开必应:http://cn.bing.com,输入Python,点击“搜索” 嗯嗯,小白找啊找啊,突然发现一项:《简明的Python教程》 .. image:: ../_static/snap/jianmingpicture.PNG “就在Bing搜索页的首页呐,既然是教程,好,先进去看看”,小白想。小白一掌一章的进行浏览,终于在第3章 最初的步骤--挑选一个编辑器—使用源文件 中找到了一段Python程序: :: #!/usr/bin/python # Filename : helloworld.py print 'Hello World' 小白:“这看起来是这本书里面最简短的一句程序了,好,咱们就试试它”`等等,好像起作用的只有print 'Hello World'这么一句,头第一句,第二句好像都只是进行程序的一些说明,头一句!/usr/bin/python分明就是声明源码文件存在的目录而已嘛,第二句是声明这个源码文件的文件名而已。对,好像就是这样,看,两句的开头都有#字,这会不会就是说明后面这段东西是注释的标志呢? 小白又有了新发现:“对,我要赶快把这个新发现告诉大家,告诉 Cpug 列表上的人。小白迅速登陆CPUG,发帖: 标题:我的新发现 内容: 大家好,我发现了一个新的Python语句用法,只要在语句的最前面加上#就可以把那一句变成注释行,并且后面的东西都不会执行,大家看对吗? ” 行者们很快就进行了跟帖: “对,探究得非常好,#是注释行的意思,跟在#后面的语句是不会被执行的,但是要注意两点: 1.#可以放在程序中的任何地方 2.#只能作单行注释,并且注释的内容会变成红色,不能作为多行注释使用 而且,建议以后再发帖前先对新的发现进行全面的实验和探索,把全部的语法探究出来再进行发帖。 ” 小白看到这里,脸刷的一下全红了,“对呐,自己还没有在交互环境中试过呢,就匆匆忙忙发帖了,以后真的得探究清楚了才进行发帖”。 嗯,过了这么久,还没有写出我的第一个程序呢!小白已经按耐不住了。“咱们现在就来写出第一个程序吧?”小白想。 写程序嘛,对,咱就先把教程上的那一句复制过来在Python shell中运行,看看有什么结果: .. image:: ../_static/snap/helloworld.png “咦,输出了一个名为Hello World的字符出来了呢。哦,我懂了,他应该就是一个输出的语句了吧?对,就是这样,print 在英文中表示打印的意思,意思应该就是把东西输出到屏幕上,以便显示出来。小白越想越觉得兴奋,后面的"Hello World"就是要输出的字符串,对,字符串要用引号引起来,print 语句和字符串中间要有空格,然后运行,就可以输出字符串中的内容了”太棒了,就是这样,我终于弄好了我人生中的第一个程序了,Yeah,小白兴奋得跳了起来。“但是怎么把它弄成点一下就可以运行的程序呢?就像真正的程序那样,对那么]就先得把这个程序生成一个文件才好嘛,可是,这里好像没有可以保存的地方呐。"小白又懊恼起来。“干脆我先自己找找这个 Idle 看看有没有保存的功能吧,可不能写到一半就放弃了。” 小白立即开始搜索起来,“咦?上面好像有一个叫File的菜单项呐??”,不会保存就是在那吧?小白迅速打开那个菜单项,“哇塞,果然有Save菜单项呐,咱这就保存试试。” 小白迅速点击Save,保存为默认的.py文件,保存完了,小白又欢呼了起来,终于保存了第一个程序了,不知道保存好的程序里面是什么东东呢?咱打开来看看?小白想。“可是,应该怎样才能打开这个叫.py格式的文件呢?”好像上面有Python的程序图标呐,双击试试...没反应。??小白的手僵住了“对,我保存的是代码文件,里面的东西应该是代码才对,对,既然是这样,那么咱们用记事本打开看看不就得了?”小白迅速打开记事本,选择到了刚才那段文字,打开: :: Python 2.7.1 (default, Nov 27 2010, 18:30:46) [MSC v.1500 32 bit (Intel)] on win32 Type "copyright", "credits" or "license()" for more information. >>> print "Hello World" Hello World "哇哇哇,这些都是什么东西嘛?这个不是刚刚在Idle中的运行结果吗?怎么一并也保存进来了呢?莫非方法有错?"小白彻底没辙了,“唉,还是上列表问问去吧。” 标题:怎样才能保存代码文件呢? 内容:怎样才能保存代码文件呢?我用IDLE(Python Shell)作直接保存的时候不知怎么地竟然把我的调试结果给保存进去了。 行者的回答: 其实你离成功已经很近了,IDLE 里面专门有一个代码编辑的窗口,打开它的办法是点击菜单 File-->New Window项,就可以进行代码的编写和保存,再告诉你一个小诀窍,想要测试这段程序是否正确,只要点击菜单项的Run-Run module项即可使代码在Python Shell项中运行,并且观察其正误。,在代码编辑器的File选项中包含了一个Save项,可以在那儿保存自己的程序呐。 另外,提前告诉你,Python是解释运行的,在计算机里的程序有两种运行方式:解释运行和编译运行。通俗地来讲,假设运行程序是演讲,解释运行就是同声传译(边讲边翻,也就是边扫描程序边运行),编译运行就是事先翻译好(编译成机器码),直接讲外语。所以,Python运行完程序之后可是会自动推出的哦... 要解决也不是没有办法,可以使用raw_input()这个叫获取用户输入的语句来暂停下程序的运行呐... 小白:“唉,看来自己的意志力还是经受不住组织的考验呐,竟然差一点点就成功了,不过,先不管了,研究这个可研究得够久了,咱试试再说。” 输入: .. literalinclude:: ../../src/1_cmdmala/1_1_helloworld.py File--Save--桌面运行 “哈哈,保存好了,咱运行看看......?怎么有一个黑色的窗口闪一下就退出了呢?莫非程序有错?不过,刚才测试过是可以正确运行的呐。” 小白想了想,在电脑上的程序都是.exe结尾的,这个却以.py结尾的!“会不会是因为后缀名不是 EXE 造成的呢?咱改改试试。”小白就把后缀改成了.exe。 “啥?不是可执行文件?”小白知道,自己又遇到困难了,可是,该怎样解决呢? “咦?刚才行者好像在邮件中提到了一个叫raw_input()的东东,刚才没仔细看邮件!”小白迅速翻查原来的邮件。 “对,就是这个,嗯?暂停执行,等待用户输入?这是什么意思呢?哎呀呀,先不管了,用了再说,反正以后我肯定会弄明白的。” 小白火速在程序最后一行加入raw_input() :: print "hello World" raw_input() “搞定,运行试试。”小白迫不及待的想。 .. image:: ../_static/snap/rawinput.PNG “哇塞,终于运行成功了,我成功了,我终于写出了我的第一个程序”小白高兴得跳了起来。 咦?对啊,代码能不能在cmd下以命令的方式运行呢?小白是新手,充满好奇心,总是问题多多 “哼哼,这对于我来说肯定不是问题,我从小学就已经开始玩 Windows 了,当时可是班里最强的玩机高手呢,这小样可难不倒我”小白激动地想。“马上切换到程序文件的目录!!”: :: C:\Documents and Settings\Administrator>python HelloWord.py 'python' 不是内部或外部命令,也不是可运行的程序 或批处理文件。 “嗯嗯,这个问题的解决办法俺还是会滴,毕竟是高手嘛一定是 Python 的环境变量没有设置好!”马上进行环境变量的设定: 我的电脑--右键--属性--高级--环境变量--在Path处加上python安装路径,小白Python装在C盘,所以是C:\python27 -- 搞定 .. image:: ../_static/snap/path.PNG “搞定,再运行一遍看看”小白热血沸腾。 :: C:\Documents and Settings\Administrator>python HelloWord.py HelloWorld “Yeah,成功了!”小白抑制不住自己的兴奋之请,在房间里蹦跳了起来。“嗯,对呐,总算把Python从头到尾熟悉了一遍,但是想要成功,还得继续下去!” 第一节完