
Think_Python2
Medlar Tea
一杯枸杞茶
展开
-
【练习题】第十一章--字典(Think python)
字典字典包括一系列的索引,不过就已经不叫索引了,而是叫键(Key),然后还对应着一个个值,就叫键值(Key Value)。每个键对应着各自的一个单独的键值。这种键和键值的对应关系也叫键值对,有时候也叫项。这种输出的格式也可以用来输入。比如你可以这样建立一个有三个项的字典:>>> eng2sp = {'one': 'uno', 'two': 'dos', 'three...原创 2018-10-29 16:55:55 · 2417 阅读 · 1 评论 -
【练习题】第十七章--类和方法(Think Python)
1.方法重写 is_after(参见16.1),这就比较有难度了,因为这个函数接收两个 Time 对象作为参数。在这个情况下,一般就把第一个参数命名为 self,第二个命名为 other:# inside class Time:def is_after(self, other): return self.time_to_int() > other.time_to_int(...原创 2018-11-01 20:19:45 · 407 阅读 · 0 评论 -
【练习题】第十六章--类和函数(Think Python)
class Time: hour=0 minute=0 second=0def print_time(t): print("%.2d:%.2d:%.2d"%(t.hour,t.minute,t.second))def is_after(t1,t2): return (t1.hour,t1.minute,t1.second)>(t2.hour,...原创 2018-10-31 21:43:45 · 402 阅读 · 0 评论 -
【练习题】第十五章--类和对象(Think Python)
别名有可能让程序读起来有困难,因为在一个位置做出的修改有可能导致另外一个位置发生不可预知的情况。这样也很难去追踪指向一个对象的所有变量。所以就可以不用别名,而用复制对象的方法。copy 模块包含了一个名叫 copy 的函数,可以复制任意对象:>>> p1 = Point()>>> p1.x = 3.0>>> p1.y = 4.0&g...原创 2018-10-31 19:35:45 · 490 阅读 · 0 评论 -
【练习题】第十四章--文件(Think Python)
2.读写文件 要写入一个文件,就必须要在打开它的时候用『w』作为第二个参数(译者注:w 就是 wirte 的意思了):>>> fout = open('output.txt', 'w')如果文件已经存在了,这样用写入的模式来打开,会把旧的文件都清除掉,然后重新写入文件,所以一定要小心!如果文件不存在,程序就会创建一个新的。open 函数会返回一个文件对象,...原创 2018-10-30 19:24:26 · 751 阅读 · 1 评论 -
【练习题】第一章--编程之路(Think Python)
在这贴上电子书(感谢网上大神的分享,这本书确实不错,在用程序开发的思想教学):https://cycleuser.gitbooks.io/think-python/content/1.在print语句后面的括号去掉一个或者两个,看看会怎么样?据说python2是可以这么写的:print ‘Hello!’但是python3就不可以了,必须要写成函数形式。2.Print字符...原创 2018-10-29 16:54:29 · 366 阅读 · 0 评论 -
【练习题】第二章--变量,表达式,语句(Think Python)
一些比较特殊的用法:不过+和*可以用在字符串上面。+加号的意思就是字符串拼接了,会把两个字符串拼到一起,如下所示:>>> first = 'throat' >>> second = 'warbler' >>> first + second throatwarbler星号也就是乘法运算符也可以用在字符串上面,效果就是重...原创 2018-10-29 16:54:56 · 1009 阅读 · 0 评论 -
【练习题】第三章--函数(Think Python)
读书笔记:1.函数定义的第一行叫做头部,剩下的叫做函数体。函数头部的末尾必须有一个冒号,函数体必须是相对函数头部有缩进的,距离行首相对于函数头要有四个空格的距离。函数体可以有任意长度的语句。2.在函数定义完毕的结尾,必须输入一行空白行。定义函数会创建一个函数类的对象,有type函数。3.fruitful function: A function that returns a v...原创 2018-10-29 16:55:04 · 2283 阅读 · 0 评论 -
【练习题】第四章--交互设计(Think Python)
1.写一个函数叫做square(译者注:就是正方形的意思),有一个名叫t的参数,这个t是一个turtle。用这个turtle来画一个正方形。写一个函数调用,把bob作为参数传递给square,然后再运行这个程序。code:import turtledef square(t): for i in range(4): t.fd(100) t.lt(9...原创 2018-10-29 16:55:10 · 923 阅读 · 0 评论 -
【练习题】第五章--条件循环(Think Python)
//--地板除。例:5//4=1%--求模。例:5//3=2如果你用Python2的话,除法是不一样的。在两边都是整形的时候,常规除法运算符/就会进行地板除法,而两边只要有一侧是浮点数就会进行浮点除法。复合语句中语句体内的语句数量是不限制的,但至少要有一个。有的时候会遇到一个语句体内不放语句的情况,比如空出来用来后续补充。这种情况下,你就可以用pass语句,就是啥也不会做的。if...原创 2018-10-29 16:55:16 · 714 阅读 · 0 评论 -
【练习题】第六章--有返回值的函数(Think Python)
增量式开发(incremental development):这个过程的核心如下: 一定要用一个能工作的程序来开始,每次逐渐添加一些细小增补。在任何时候遇到错误,都应该弄明白错误的位置。 用一些变量来存储中间值,这样你可以显示一下这些值,来检查一下。 程序一旦能工作了,你就应该把一些发挥『脚手架作用』的代码删掉,并且把重复的语句改写成精简版本,但尽量别让程序变得难以阅...原创 2018-10-29 16:55:22 · 839 阅读 · 0 评论 -
【练习题】第七章--迭代(Think Python)
相比之下,与其对比x和y是否精确相等,倒不如以下方法更安全:用内置的绝对值函数来计算一下差值的绝对值,也叫做数量级。if abs(y-x) < epsilon: break这里可以让epsilon的值为like 0.0000001,差值比这个小就说明已经足够接近了。算法:执行算法是很无聊的,但设计算法很有趣,是智力上的一种挑战,也是计算机科学的核心部分。有的事...原创 2018-10-29 16:55:27 · 460 阅读 · 0 评论 -
【练习题】第十二章--元组(Think Python)
元组1.元组不可修改元组是一系列的值。这些值可以是任意类型的,并且用整数序号作为索引,所以可以发现元组和列表非常相似。二者间重要的区别就是元组是不可修改的。元组的语法是一系列用逗号分隔的值:>>> t = 'a', 'b', 'c', 'd', 'e'通常都用一对圆括号把元组的元素包括起来,当然不这样也没事。>>> t = ('a'...原创 2018-10-29 16:56:02 · 2769 阅读 · 0 评论 -
【练习题】第十章--列表(Think Python)
列表在列表里面,这些值可以是任意类型的。一个列表中的值一般叫做列表的元素,有时候也叫列表项。列表内部可以包含一个列表作为元素,这种包含列表的列表也叫做网状列表:['spam', 2.0, 5, [10, 20]]列表元素可修改和字符串不同的是,列表是可以修改的。列表的索引和字符串的索引的格式是一样的:• 任意的一个整型表达式,都可以用来作为索引编号。• 如果你试...原创 2018-10-29 16:55:48 · 3544 阅读 · 0 评论 -
【练习题】第八章--字符串(Think Python)
遍历的方法:第一种是用while:index = 0while index < len(fruit): letter = fruit[index] print(letter) index = index + 1第二种是用for:prefixes = 'JKLMNOPQ'suffix = 'ack'for letter in prefixes:...原创 2018-10-29 16:55:33 · 1006 阅读 · 0 评论 -
【练习题】第九章--案例学习:单词游戏(Think Python)
在此强调一点:for i in range(1,5): print(i)answer:1234for i in range(5): print(i)answer:01234读取字符列表在 for 循环中也可以使用文件对象。下面的这个程序读取整个 words.txt 文件,然后每行输出一个词:fin = open('words.tx...原创 2018-10-29 16:55:39 · 1978 阅读 · 0 评论 -
【练习题】第十八章--继承(Think Python)
一个带有映射性质的类:class Card: def __init__(self, suit=0, rank=2): ''' 类的实例属性''' self.suit = suit self.rank = rank '''类的属性''' suit_names = ['Clubs', 'Diamonds', 'Hearts'...原创 2018-11-07 10:01:19 · 547 阅读 · 0 评论