计算机编程 python核心编程

趣学Python编程 - 全本 - 免费下载 - 计算机书籍控
趣学Python编程
作者: Jason Briggs
Python是一种强大并通俗易懂的编程语言,而且它易学又好用!但是关于学习Python语言的书大多很枯燥无趣,读起来没什么乐趣。本书把你带入一个鲜活的Python编程世界。作者Jason R. Briggs将带领你用独特的(往往很好玩的)示例程序带你学习基础知识。每章后面都配有编程练习来帮助训练思维并加强理解。在本书的最后部分,你将编写两个完整的游戏:一个经典弹球游戏的复制品,以及一个能在平台上跳跃、有动画及更多效果的《火柴人逃生》游戏。当你完成这个编程之旅后,你将学到:● 使用列表、元组和字典等基本数据结构;● 用函数和模块来组织以并重用代码;● 使用循环和条件语句等控制结构;● 用Python 的海龟模块来画形状和图案;● 用tkinter 来创建游戏、动画以及其他画面效果。为什么这本书也能给读者带来乐趣?因为本书是你进入神奇的计算机编程世界的门票。
第1部分 学习编程
第1章 Python不是大蟒蛇 3
1.1 关于计算机语言 3
1.2 安装Python 4
1.2.1 在Windows 7上安装Python 4
1.2.2 在苹果OS X上安装Python 6
1.2.3 在Ubuntu上安装Python 8
1.3 当你安装好Python以后 9
1.4 保存Python程序 10
1.5 你学到了什么 12
第2章 计算与变量 13
2.1 用Python来做计算 13
2.1.1 Python的运算符 14
2.1.2 运算的顺序 15
2.2 变量就像是标签 16
2.3 使用变量 17
2.4 你学到了什么 20
第3章 字符串、列表、元组和字典 21
3.1 字符串 21
3.1.1 创建字符串 21
3.1.2 处理字符串相关的问题 23
3.1.3 在字符串里嵌入值 25
3.1.4 字符串乘法 26
3.2 列表比字符串还强大 27
3.2.1 添加元素到列表 29
3.2.2 从列表中删除元素 30
3.2.3 列表上的算术 31
3.3 元组 32
3.4 Python里的map不是用来指路的 33
3.5 你学到了什么 35
3.6 编程小测验 36
第4章 用海龟画图 37
4.1 使用Python的turtle(海龟)模块 37
4.1.1 创建画布 38
4.1.2 移动海龟 39
4.2 你学到了什么 43
4.3 编程小测验 43
第5章 用if和else来提问 45
5.1 if语句 45
5.2 语句块就是一组程序语句 45
5.3 条件语句帮助我们做比较 48
5.4 if-then-else语句 49
5.5 if和elif语句 50
5.6 组合条件 51
5.7 没有值的变量——None 52
5.8 字符串与数字之间的不同 52
5.9 你学到了什么 55
5.10 编程小测验 55
第6章 循环 57
6.1 使用for循环 57
6.2 还有一种叫while的循环 64
6.3 你学到了什么 67
6.4 编程小测验 67
第7章 使用函数和模块来重用你的代码 69
7.1 使用函数 69
7.1.1 函数的组成部分 70
7.1.2 变量和作用域 71
7.2 使用模块 73
7.3 你学到了什么 75
7.4 编程小测验 76
第8章 如何使用类和对象 78
8.1 把事物拆分成类 78
8.1.1 父母与孩子 79
8.1.2 增加属于类的对象 80
8.1.3 定义类中的函数 81
8.1.4 用函数来表示类的特征 81
8.1.5 为什么使要用类和对象 82
8.1.6 画图中的对象与类 84
8.2 对象和类的另一些实用功能 86
8.2.1 函数继承 87
8.2.2 从函数里调用其他函数 88
8.3 初始化对象 89
8.4 你学到了什么 90
8.5 编程小测验 90
第9章 Python的内建函数 92
9.1 使用内建函数 92
9.1.1 abs函数 92
9.1.2 bool函数 93
9.1.3 dir函数 94
9.1.4 eval函数 96
9.1.5 exec函数 97
9.1.6 float函数 98
9.1.7 int函数 98
9.1.8 len函数 99
9.1.9 max和min函数 100
9.1.10 range函数 101
9.1.11 sum函数 102
9.2 使用文件 103
9.2.1 创建测试文件 103
9.2.2 在Python中打开文件 106
9.2.3 写入到文件 107
9.3 你学到了什么 108
9.4 编程小测验 108
第10章 常用的Python模块 109
10.1 使用copy模块来复制 109
10.2 keyword模块记录了所有的关键字 112
10.3 用random模块获得随机数 112
10.3.1 用randint来随机挑选一个数字 112
10.3.2 用choice从列表中随机选取一个元素 114
10.3.3 用shuffle来给列表洗牌 115
10.4 用sys模块来控制Shell程序 115
10.4.1 用exit函数来退出Shell程序 115
10.4.2 从stdin对象读取 115
10.4.3 用stdout对象来写入 116
10.4.4 我用的Python是什么版本的 116
10.5用time模块来得到时间 117
10.5.1 用asctime来转换日期 118
10.5.2 用localtime来得到日期和时间 119
10.5.3 用sleep来休息一会儿吧 120
10.6 用pickle模块来保存信息 120
10.7 你学到了什么 122
10.8 编程小测验 122
第11章 高级海龟作图 124
11.1 从基本的正方形开始 124
11.2 画星星 125
11.3 画汽车 128
11.4 填色 130
11.4.1 用来画填色圆形的函数 131
11.4.2 使用纯白和纯黑 132
11.5 画方形的函数 133
11.6 画填色正方形 134
11.7 画填好色的星星 135
11.8 你学到了什么 137
11.9 编程小测验 137
第12章 用tkinter画高级图形 139
12.1 创造一个可以点的按钮 140
12.2 使用具名参数 142
12.3 创建一个画图用的画布 142
12.4 画线 143
12.5 画盒子 144
12.5.1 画许多矩形 146
12.5.2 设置颜色 148
12.6 画圆弧 151
12.7 画多边形 153
12.8 显示文字 154
12.9 显示图片 155
12.10 创建基本的动画 157
12.11 让对象对操作有反应 159
12.12 更多使用ID的方法 161
12.13 你学到了什么 163
12.14 编程小测验 163
第2部分 弹球实例
第13章 你的第一个游戏:弹球 167
13.1 击打反弹球 167
13.2 创建游戏的画布 168
13.3 创建Ball类 169
13.4 增加几个动作 171
13.4.1 让小球移动 171
13.4.2 让小球来回反弹 172
13.4.3 改变小球的起始方向 174
13.5 你学到了什么 176
第14章 完成你的第一个游戏:反弹吧,小球! 177
14.1 加上球拍 177
14.2 让球拍移动 179
判断小球是否击中球拍 180
14.3 增加输赢因素 183
14.4 你学到了什么 187
14.5 编程小测验 187
第3部分 火柴人实例
第15章 火柴小人游戏的图形 191
15.1 火柴小人游戏计划 191
15.2 得到GIMP 192
15.3 创建游戏中的元素 193
15.3.1 准备一个有透明背景的图形 194
15.3.2 画火柴人 195
15.3.3 画平台 197
15.3.4 画门 197
15.3.5 画背景 198
15.3.6 透明 199
15.4 你学到了什么 200
第16章 开发火柴人游戏 201
16.1 创建Game类 201
16.1.1 设置窗口标题以及创建画布 201
16.1.2 完成init函数 202
16.1.3 创建主循环函数 203
16.2 创建坐标类 205
16.3 冲突检测 205
16.3.1 精灵在水平方向上冲突 206
16.3.2 精灵在垂直方向上冲突 208
16.3.3 把它们放在一起:最终的冲突检测代码 208
16.4 创建精灵类 210
16.5 添加平台类 211
16.5.1 加入平台对象 212
16.5.2 添加很多平台 213
16.6 你学到了什么 215
16.7 编程小测验 215
第17章 创建火柴人 217
17.1 初始化火柴人 217
17.1.1 装入火柴人图形 217
17.1.2 设置变量 218
17.1.3 与键盘按键绑定 219
17.2 让火柴人向左转和向右转 220
17.3 让火柴人跳跃 221
17.4 我们都做了什么 221
17.5 你学到了什么 222
第18章 完成火柴人逃生游戏 223
18.1 让火柴人动起来 223
18.1.1 创建动画函数 223
18.1.2 得到火柴人的位置 226
18.1.3 让火柴人移动 227
18.2 测试我们的火柴人精灵 235
18.3 门 235
18.3.1 创建DoorSprite类 236
18.3.2 门的检测 237
18.3.3 加入门对象 237
18.4 最终的游戏 238
18.5 你学到了什么 244
18.6 编程小测验 245
结束语 接下来学什么 246
附录 Python的关键字 253
术语表 265
密码:bs6q发布过的帖子
感谢画匠小E(微信ID:E-st
感谢优秀吃货张可可(ID:zk
“本文为马良行mlhang(ID:
感谢画匠小E(微信ID:E-st
又到高考的时候了,好多朋
天空在图上方,城市天际线的
面向设计师的Python基础教程 --- 第一课为什么学编程&为什么学Python
时间: 22:20
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
才可以下载或查看,没有帐号?
(注:教程首发并连载于NCF,,Rhinoscript板块,有问题请到论坛发帖)
一、关于本系列教程& && &Rhino5时代McNeel推出了Rhino.Python,McNeel不仅老老实实的将原RhinoScript语法全部移植了过去,而且Rhino.Python本身就基于IronPython平台,大有推新除陈之势。IronPython是为了实现在微软.net平台使用Python语言而开发的一个平台,我们知道传统的RhinoSDK工具RhinoCommon便是基于.net平台,因此Rhino.Python不仅能进行类似Rhinoscript的外层建模工具的参数化编程,而且能使用Rhino底层的开发库进行Rhino插件一类的程序开发。因此作为准备以Rhino为主要参数化应用平台的同学们,在掌握Grasshopper之外还想掌握一门代码式编程语言的话,Rhino.Python无疑是你最好的选择。
& && &&&目前Rhino.Python网络上已经有一些教程,例如原厂出的《RhnioPython101》,shaper3d的jorin同学的&跟我读【RhinoPython 101】系列视频教程&等。但我觉得已有的教程并没有从涉及语言本身的基础性知识开始,一开始就在Rhino平台上进行形态建模的编程,例如《RhnioPython101》只是对《Rhinoscript101》的简单改写。这或许无助与你遇到其他一些算法问题需要解决时的思维问题。
zfhrrhml8lxfm.jpg (60.31 KB, 下载次数: 1)
22:20 上传
& & 学习编程一定不要眼光只放在一个语言平台上,尤其是学习你第一门计算机语言时,你更需要学习的是算法思维/计算机科学家的思维,这样你学习这门知识才是对你一生有帮助的,保不住明天更为强大一款针对建筑师的参数化平台产生。& & 因此我的这系列教程打算分成这几个部分,第一部分不会接触Rhino.Python,直接从原生的Pyhton平台和一个优秀IDE(编程平台,具有高亮语法、错误识别、debug等功能)JetBrains PyCharm开始,第二部分开始介绍Rhino.Python的对应形态生成(点线面、线面编辑、移动变幻等操作),第三部分分参数化设计类型来介绍Rhino.Python辅助我们参数化设计的方法,或许会有与其他平台如Grasshopper交互的部分。
xfu3h7hftmemsh.jpg (62.44 KB, 下载次数: 1)
22:20 上传
& & 本系列教程针对所有0基础和初学者的同学,当然你有一定的Rhino脚本编写基础也不妨看看,或许对你有帮助。
二 为什么要学习编程
& & 对于那些还没有接触过代码编程或正在彷徨要不要学习一门编程语言的建筑学子来说,你需要解决的第一个问题便是&我为什么要学习一门编程语言?&或许有相当部分同学会觉得,代码编程是那些为了进Google、苹果或腾讯的计算机专业学生才选择学习的技能。的确如果仅出于工作上的考虑,我们这个时代的建筑学子大可不必在匆忙的学习中抽出时间来学习编程,学好CAD、SU、Rhino二维和三维绘图,苦修设计能力,熟练规范对于以后从事的工作来说足矣,Autodesk、Mcneel公司的程序员会逐渐为我们添加这个行业需要的软件功能,何苦再去费时费力学习之前从未接触过的代码编程呢。& & 首先我们来看看这样一些事实,在我们的生活中,从我们乘坐的电梯楼层跳转,到公交车上的刷卡消费,再到手机里的精美Apps,无不依赖与程序算法控制,计算机科技带来的生活体验已经深入到我们身边的绝大部分事物。的确正如爱因斯坦所言,科技正在使人变傻,你是想做一个无脑消费技术的&傻子&,还是想窥探这些事物背后的奥秘呢?
2158589rxwjx8eezedrj8e.jpg (94.15 KB, 下载次数: 2)
22:20 上传
& & 建筑和人类生活如此的紧密相关,以至于任何试验性改革都不可能首先在建筑身上发生,因此建筑学是一个技术和艺术都双层滞后的学科。我们来看看其他学科的人都在干什么,学机械的在开发机器人、无人驾驶汽车相关算法,学物理的在计算机中用程序模拟现实世界、学化学的用算法进行分子模拟,还在就Fortran 还是C语言在分子化学编程中好喋喋不休的打口水仗、学艺术的开始用Processing做视觉特效,用html和css美化我们的互联网、学管理学法学的学子都会用到数据库知识建立各种数据统计模型进行研究、就连我们的邻居土木工程学子都能够熟练掌握Matlab语言进行新型结构设计,难道你还要守着老旧的建筑设计方法不变么?& & 数字技术经历了引领工业制造领域的全方位变革之后,现在正在建筑领域大放异彩,目前你们都已经知道数字技术已经而且必然将是建筑学未来发展的一个主潮流。
& & 建筑学子拥有编程技能对于你个人而言至少有以下好处:能够快速掌握任何一款新的软件
有一种说法,任何一款计算机软件都是一门高级计算机编程语言,它们都是程序员通过各种高级编程语言开发而成,程序原理和算法逻辑深深根植于其中。除了能快速学习基本功能,我们所用到的各种二维三维图形软件都提供了用户扩展的编程图形工具,如Rhino上的Grasshopper,Autocad上从以前的lisp语言到现在最新的.net编程扩展平台,有了编程能力,这些用于特殊设计的需求的扩展功能的学习也能很快入手。保持竞争力
& & 无论你是打算在设计院做设计工作,还是打算在学院做科研工作,编程能力都将在你以后的工作中让你保持对他人的竞争力。暂且不谈建筑学未来的创造性工作在哪里,但目前建筑形态要求越来越复杂几何外观,建筑设计考虑越来越多的量化条件,建筑理论逐渐被数字渗透,建筑物理越来越依赖于模拟先于实测。完成这些工作最有效的方法就是将你的思维转化成代码然后交给计算机来完成,而目前仅有少数人能够把清晰的思考变成可执行的算法代码。提高效率
& & 会Grasshopper的同学知道,GH编程很多时候并不一定需要用来进行复杂曲面的建模,简单形态需要重复建模或者按某种规律建模的时候GH往往可以派上大用场节省时间。在我们二维三维建模,或一些日常科研数据的处理中,有大量的重复性工作,编程能力可以极大的帮助我们在处理这类问题中提高效率,节省时间。计算思维
& & 我一直认为,计算机是人类有史以来最伟大的发明,目前每个行业的问题解决、方案设计、行为研究多少都必须依赖于计算机。可以说,对于现今的计算机普及程度,一个人可以主修计算机科学而从事任何行业。大概有不少同学在设计院中已经感受到了那些计算机牛逼的同事所具有的一系列创造性的工作方式带来的压力。在下一个时代,计算思维必然普及到每一个学科的基础课堂中,这是不可避免的趋势。& & 而对于我们而言,从现在开始就学习一门计算机语言是赶上这个时代未来发展的必要条件,然而不同于我们之前的学科,学习编程所面对的不是自然物理世界,而是一套从数学(计算、几何)和逻辑学的基础上建立起来的人工系统。利用这套人工系统将现实问题抽象成基本数学符号、逻辑语言的能力便是计算思维。记住它是人的思维方式,而不是计算机的思维方式,而它是由近代的计算机科学家、逻辑学家和数学家设计,有一套明了的规则和哲学思维在其中,因此纵然某些同学的抽象能力很好,但掌握这套规则也是利用计算思维的必然途径,而对于我们中国学子而言,绝大部分计算机语言都是以英语语言为基础,无疑给我们的学习又带来很多难度。
三、为什么选择Python& & 目前这个世界上光活跃的语言大概都不少于100种,为什么我要建议选择Python。先说说Python的故事,在最新一期的权威计算机语言排名TIOBE排行榜上,Python排名第八,在这个排行榜前十位上,Python也是最年轻的一位。对于一些觉得Python应用面太少的同学这个顾虑可以打消了,目前各种层面的应用上,都可见Python 的身影,文艺青年喜欢上的豆瓣、宅男下片儿的uTorrent、玩家玩的Torchlight,还有逆天的Google Apps Engine等都是基于Python开发。Python的创始人为(Guido van Rossum),Python的图标便是两只环绕的小蟒蛇,得名于作者当时最喜欢的巨蟒马戏团(Monty Python)。目前Python是由一个开源社区维护,仍然是领导人。
fa1ll6riaza15.jpg (99.58 KB, 下载次数: 1)
22:20 上传
& & Python的设计哲学是&优雅&、&明确&、&简单&。用Python写出来的程序要比其他语言简洁很多,这是为世界所有程序员所公认的,而且Python年轻,它具备了传统语言的强大性和通用性,可以运用于在各个平台,兼具当代语言面向对象的全部特性,而又能够进行适合于初学者的结构化编程方式。当然这些特性并非Python特有,下面我们来看看为何我特别推荐建筑学子学习入门语言采用Python。我读小学时候学校便开设了计算机课程,大概是为了应付当时全国上下素质教育的广大呼声。但配套的老师却对此也是几乎一窍不通,学校便买来课本放在课桌上学生自己学习,很幸运学校买的是一本计算机语言教材。我在那儿接触了我的第一门语言是LOGO语言,这是一门专门针对幼儿开发语言程序,有一只可爱的小海龟,具有较好的二维绘图能力。再往后我自学了B系语言,Q-Basci、GV-Basic和C系语言C 、JAVA,在大学本科时候为了保持自己在编程上不丢才接触了Python,现在也没有放弃其他语言,我现在常常工作的Anylogic平台便需要用JAVA进行代码编程。当时也比较了一下Ruby,不过因为后者是小日本开发的,所以就没有深入下去。当然我会的语言不多,技术也不高,一个正常的编程高手通常都会掌握半打的计算机语言。但在接触的一系列语言来说,我最喜欢的就是Python,而且觉得Python应该是我们建筑专业学子入门掌握的最佳语言,有如下理由:
绝佳的应用平台
& & 前面已经讲到过,Python是McNeel选定的Rhinoscript的代替者,已经完全整合到了Rhino参数化设计平台中,即有丰富的建模库,又可通过IronPython的.net编程属性直接利用RhinoSDK的全部工具,这里面就包含了强大的RhinoCommon库,同时还与Grasshopper完全整合,可以用到GrasshopperSDK中的全部库,也就是说Grasshopper中的每一个运算器都可以用Python实现。它是我们在Rhino平台上进行参数化设计的绝佳辅助工具。除此之外,MAYA、3DMAX 、Houdini、Blender等许多主流的三维建模软件、Catia、Arcgis、Revit、等常用的设计辅助和BIM软件都支持Python脚本扩展。整合其他语言的能力
& & 可能会有一些更主流的语言,如C、VB在辅助设计类软件中用得更加广泛,但Python十分优秀的一个地方是Python社区开发了大量的第三方语言接口模块,能够直接使用其他语言的库,例如IronPython可以使用Python使用微软.net库,Boost.Python可以让Python调用C++编写的代码。Google许多项目在开发的时候会使用C++、JAVA等来完成完成一些对程序效率要求较高的片段,然后使用Python将其整合起来。Python本身的完美设计帮助你理解编程的本质
& & Python的设计让程序代码明确、简介,没有过多花哨的特点。什么&指针&、&泛型&、&堆栈&,虽然它具备这些特性,但你在学习Python时完全可以避开这些复杂的概念,而你在学习JAVA等语言的时候,一开始上来许多复杂的概念就直接把你的头搞大。Python具有完美的图灵完整结构和清晰的语言结构,你只需掌握很少的规则便可学会Python 的运用,而这些规则就是计算机程序语言的本质部分。Python的代码可读性也非常好,很少会让你在阅读时产生歧义。其他不那么技术的理由
& & 很多前面已经介绍了,掌握在高级语言中算非常容易的、完全免费、程序规模不大时运行较快、较为强大的社区支持、丰富的各种库、最后YouTube、Google、Yahoo!、NASA都在内部大量地使用Python,所以也不要怕它会过时。
& & 当然,Python也有一些不足:1 没有商业性的大公司在主导维护,Python缺乏一些预包装的解决方案,例如VB有微软在维护,各种现成的库数不尽数,JAVA有SUN在维护,有苹果在维护,不会代码的人,直接像拼积木一样就可以进行IOS苹果设备的应用开发,而Python的这些在某些问题上会使得解决方案成本过高,但对于我们建筑学子来说,这一点完全不成问题,因为我们不会去开发一个网站,即时通讯系统,游戏等,我们需要的,就是用它来辅助设计;2 Python没有许多花哨的方法,例如不支持函数重载,导则有些时候的运行效率不高,与C++等相比可能会较慢,不过根据二八定律,大部分程序对速度要求不高,如果非要追求程序速度,可以使用C++改写部分核心程序,利用JIT技术(前面提到的整合其他语言)整合;3 GUI库的缺乏,现在的程序越来越追求美观,但Python比较缺乏GUI库,也就是程序界面部分相关的库,但对于我们建筑学子来说,这也不是问题,因为我们很少会进行程序开发,顶多也就是开发一个插件,而且无需太注重程序界面,设计出来的建筑好看才是第一。
四、对于初学者的建议& & 有些个人建议对坛子里的初学者说,当然这些建议也会贯穿到我的后续教程当中& & 1 不要试图一星期学会编程,编程的学习应该是一个长期的过程,我们要认识到对这一工具的掌握将使我们受益终身,而一知半解也是非常危险的,所以我在这第一课里面完全没有开始关于Python编程的具体部分,而是花了大篇幅让你们认识到这一技能的重要性。学好编程需要对这一技能具有持续性的兴趣,需要经过许多艰苦的练习,而不是一星期就可以完成而且到处炫耀的。我之前在网络上发表Rhino教程时,第一课也这样讲过,而且推荐了一篇文章《用十年时间学习编程》(Peter Norvig ),这里同样推荐各位阅读一下,用任何搜索引擎在网络上可以找到这篇文章。& & 2 不要采用那些用于什么国家计算机考级而编写的书籍作为你的初学教材,并非这些教材无用,而是这类教材用于应试性的编写方法,充斥了大量的无趣习题和洗脑填鸭式概念灌输方法,大部分情况下这会彻彻底底毁掉你对这门美妙艺术的兴趣。& & 3 关于英语和数学& & 两者都没有那么重要,不要被编程语言的这两个特点所难到。首先是英语,像Python等绝大部分语言都是基于英语自然语言的的,但要求并不高,对于程序本身而言你只需要掌握最基本的单词(如If、For、Next、While、include等)就能很好的理解编程本身,唯一的难度在于许多的编程代码中有大量的英语注释,可能是一些复杂的描述。& & 就数学而言,计算机语言是基于数学发展起来的,当然你数学越好对于学习编程来说会越有优势,但是我们这些建筑学生大概本科一年级学完高数之后就再也没有去钻研过数学的知识,就我的经验而言,只要你会基本的代数运算,几何数学知识是完全能够掌握编程的,当然仅仅会加减乘除也是不够的,至少你要会代数方程、集合映射一类的高中数学知识。而且你在学习编程的过程中,数学能力会不可避免的进步。& & 4 遇到问题去寻找吧& & 当你被一个问题困扰得一筹莫展时,去寻找吧,利用各种已有的资源,你遇到过的问题前人也遇到过,不要试图重新制造车轮,特别是在处理实际问题时,采用一套已有的解决方案能够节约你大量的时间,这也是最好的学习知道。特别的Python是自足的,各种问题的解决方案在互联网上都能找到答案或者是方向的。& & 5 先学好一门语言& & 先学好Python吧,然后再去接触其他语言,不要今天学Python明天学JAVA,对于初学者的你来说会造成你知识无法掌控的混乱,例如Python用缩进,JAVA用括号,最后你写出来的东西一排是括号一排是缩进。你在学好一门语言之后想在编程上有进步,学习另一门语言是必要的,但此时你可以快速,差不多一个星期内掌握这个语言的特点,在有资料可查询的情况下应用于实际或科研项目上。
五、相关资源& & 当然我会持续更新教程,个人时间有限,不可能一天更新一篇,但对于有些同学来说不免慢了点,Python有大量的学习资源,而且很多优秀资源都是免费的,你不需要从书店购买。我暂不推荐各位直接用《RhnioPython101》入手,先学习Python的基本知识,再学习Rhnio平台上的Python三维图形编程。推荐的一些资源如下:官方Python文档,这是查阅基本库和函数用法的最好工具,《Python核心编程》(美)丘恩(Chun,W.J.)著,可下到中文版电子书。《Think Python》,免费电子书。。《How to Think Like a Computer Scientist-Learning with Python》,电子书,网上可找到。《》,免费在线教程,,也可在网上找到中文版电子书。《Thinking_In_Python》著名的程序语言教材作家Bruce.Eckel著,网上也可找到电子版。http://diveintopython.org/,在线教程。/,中文Python社区,有不是最新版的官方文档中文翻译。
& & 然后你可以学习Rhino.Python,目前它的学习资源不多:《RhnioPython101》McNeel官方社区Grasshopper的Python运算器页面搜集了一系列教程的页面一个简单的Python入门教程http://code.algorithmicdesign.net/有许多算法建模的源程序
& & 以上内容和建议仅供参考,再重申一下本系列课程针对入门者和初学者,至少在前期会是,由于针对的是建筑学子,基本上不会涉及GUI、网络编程、数据库技术和其他第三方Python库,若你想学习这类知识请寻找其他教程,本教程也会循序渐进,到后期可能会有一些复杂的问题,本人水平也有限,有高手发现有不对的地方还请指出,本教程将在NCF连载,对于版权有两点说明:1在本教程没有连载完成之前请勿转载到任何其他论坛或个人博客,请尊重知识成果;2 片段式(不超过一次教程的三分之一)的转载和免费教学使用允许,但必须符合非商业、署名、不可修改这三个条件。
谁来看过此贴
此贴被TA们浏览了1812次
python在计算机图形方面还是很有用的

我要回帖

更多关于 python高级编程 的文章

 

随机推荐