《Python核心编程》第二版第162页第六章练习 续七
摘要:6-16.矩阵。处理矩阵M和N的加和乘操作。【答案】(a)M和N的加操作代码如下:def matrix_input(string, m, n): matrix = [] a = string.split(',') for i in range(m * n): matrix.append(a[i]) return matrix def matrix_display(matrix, m, n): for i in range(m): for j in range(n): print matrix[i * n + j], print '\r'M_row = int(r
阅读全文
posted @
2011-06-04 06:46
balian
阅读(783)
推荐(0) 编辑
《Python核心编程》第二版第162页第六章练习 续六 -Python核心编程答案-自己做的-
摘要:6-14.随机数。设计一个“石头、剪子、布”游戏,有时又叫“Rochambeau”,你小时候可能玩过,下面是规则。你和你的对手,在同一时间做出特定的手势,必须是下面一种:石头、剪子、布。胜利者从下面的规则产生,这个规则本身是个悖论。(a)布包石头。(b)石头砸剪子。(c)剪子剪破布。在你的计算机版本中,用户输入他/她的选项,计算机找一个随机选项,然后由你的程序来决定一个胜利者或者平手。注意,最好的算法是尽量少使用if语句。【答案】代码如下:def showmenu(): print ''' (S)tone S(h)ears (C)loth (Q)uit '
阅读全文
posted @
2011-06-03 07:22
balian
阅读(964)
推荐(0) 编辑
《Python核心编程》第二版第160页第六章练习 续五 -Python核心编程答案-自己做的-
摘要:(b)代码如下,另外一种做法,逆序查找:def rfindchr(string, char): a = string index = -1 k = len(a) for i in a[::-1]: k = k - 1 if i == char: index = k print index break if index == -1: print 'index = ', index a = raw_input('Please input a string ... ')b = raw_input('Please input a character to be
阅读全文
posted @
2011-05-31 12:25
balian
阅读(753)
推荐(0) 编辑
《Python核心编程》第二版第160页第六章练习 续四 -Python核心编程答案-自己做的-
摘要:6-11.转换。(a)创建一个从整型到IP地址的转换,如下格式:www.xxx.yyy.zzz。(b)更新你的程序,使之可以逆转换。【答案】(a)代码如下:Input_number = abs(int(raw_input('Please input a number ...')))x3 = x2 = x1 = x0 = 0x3 = Input_number / (256 ** 3)if x3 > 255: tmp = x3 x3 = 255else: tmp = x3x2 = (Input_number - 256 ** 3 * tmp) / (256 ** 2)x1 =
阅读全文
posted @
2011-05-30 19:34
balian
阅读(878)
推荐(0) 编辑
Eclipse风格下载
摘要:【推荐】下面是我搜到的IDE风格,用于Eclipse + PyDEVhttp://pydev.blogspot.com/2009/07/creating-dark-theme-and-exporting-and.htmlhttp://stackoverflow.com/questions/1685079/color-themes-for-eclipse-python-development http://marketplace.eclipse.org/content/eclipse-color-themehttp://www.hanselman.com/blog/VisualStudioPro
阅读全文
posted @
2011-05-28 12:40
balian
阅读(487)
推荐(0) 编辑
《Python核心编程》第二版第160页第六章练习 续三 -Python核心编程答案-自己做的-
摘要:6-7.调试。看一下在例6.5中给出的代码(buggy.py)(a)研究这段代码并描述这段代码想做什么。在所有的(#)处填写你的注释。(b)这个程序有一个很大的问题,比如输入6、12、20、30等它会死掉,实际上它不能处理任何的偶数,找出原因。(c)修正(b)中提出的问题。例6.5 有bug的程序(buggy.py)这是一个用于练习6-7的程序,判断这个程序是干什么的,在“#”处添加你的注释,找出其中的错误,并修改之。num_str = raw_input('Enter a number: ')num_num = int(num_str)fac_list = range(1,
阅读全文
posted @
2011-03-10 12:02
balian
阅读(1146)
推荐(0) 编辑
一些Python博客资源
摘要:一些Python的资源[PYTHON 书籍合集]PYTHON eBooks Colletion (updating....) http://www.cnblogs.com/Henrya2/archive/2009/01/16/1376724.htmlPython 研究(Dive Into Python)http://woodpecker.org.cn/diveintopython/python新手的几个资源- harrychinese http://jfd7sku.kodingen.com/blog/?p=75推荐两个不错的python资源 http://www.cnblogs.com/dah
阅读全文
posted @
2011-02-17 07:26
balian
阅读(520)
推荐(0) 编辑
《Python核心编程》第二版第160页第六章练习 续二 -Python核心编程答案-自己做的-
摘要:6-5.字符串。(a)更新你在练习2-7里面的方案,使之可以每次向前向后都显示一个字符串的一个字符。(b)通过扫描来判断两个字符串是否匹配(不能使用比较操作符或者cmp()内建函数)。附加题:在你的方案里加入大小写区分。(c)判断一个字符串是否重现(后面跟前面一致)。附加题:在处理除了严格的回文之外,加入对例如控制符号和空格的支持。(d)接受一个字符串,在其后面加一个反向的拷贝,构成一个回文字符串。【参考】2-7.循环和字串。从用户那里接受一个字符串输入,然后逐字符显示该字符串。先用while循环实现,然后再用for循环实现。【2-7的答案】代码如下:a = raw_input("P
阅读全文
posted @
2011-02-15 09:07
balian
阅读(1620)
推荐(1) 编辑
Python递归(recursion)专题
摘要:我想把Python中的递归作为一个专题讨论一下。我在学习的时候,尝试使用“Python递归”作为关键词,在Google和百度中搜索,发现结果大部分是对某个具体例子的递归应用讨论,而对我这样的小白来说,切入点有点高。而我现在需要做的,是从基础概念开始。想到讨论递归问题,是因为那个著名的“字典序”问题,但还是先从最基本的递归概念开始。我希望我讨论完了这个,自己对递归也有一个基本的了解了。递归的概念很简单,如果函数包含了对其自身的调用,该函数就是递归的。拗口一点的定义是,如果一个新的调用能在相同过程中较早的调用结束之前开始,那么个该过程就是递归。两个定义都来自《Python核心编程第二版》的第304
阅读全文
posted @
2011-02-11 07:01
balian
阅读(30883)
推荐(0) 编辑
《Python核心编程》第二版第160页第六章练习 续一 -Python核心编程答案-自己做的-
摘要:6-4.算术。更新上一章里面你的得分测试联系方案,把测试得分放到一个列表中去。你的代码应该可以计算出一个平均分,见练习2-9和5-3。【参考】练习2-9.循环和操作符。创建一个包含五个固定数值的列表或元组,输出他们的平均值。本练习的难点之一是通过除法得到平均值。你会发现整型除会截去小数,因此你必须使用浮点除以得到更精确的结果。float()内建函数可以帮助你实现这一功能。【参考】练习5-3.标准类型操作符。写一段脚本,输入一个测验成绩,根据下面的标准,输出他的评分成绩(A-F)。A:90~100 B:80~89 C:70~79 D:60~69 F:<60【答案】代码如下:scoreLis
阅读全文
posted @
2011-02-06 05:28
balian
阅读(932)
推荐(0) 编辑
《Python核心编程》第二版第160页第六章练习
摘要:和大家分享自己完成的《Python核心编程》习题答案。因为不是来自官方资源,是自己的的练习,可能有误或者并非最好的解决办法。【推荐】推荐博文:牛B的Python模块http://www.cnblogs.com/chu888chu888/archive/2011/01/09/1931084.html【推荐】推荐博文:Python核心编程练习第六章,别人做的练习http://blog.csdn.net/killua_hzl/archive/2010/05/31/5637828.aspx【推荐】推荐博文:全排列算法之字典序法http://blog.sina.com.cn/s/blog_4c471b9
阅读全文
posted @
2011-02-04 09:02
balian
阅读(1605)
推荐(0) 编辑
《Python核心编程》第二版第97页第五章练习 续五
摘要:和大家分享自己完成的《Python核心编程》答案。因为不是来自官方资源,是自己的的练习,可能有误或者并非最好的解决办法。5-16.家庭财务。给定一个初始金额和月开销数,使用循环,确定剩下的金额和当月的支出数,包括最后的支出数。Payment()函数会用到初始金额和月额度,输出结果应该类似下面的格式(例子中的数字仅用于演示)。Enter opening balance: 100.00Enter monthly payment: 16.13 Amount RemainingPymt# Paid Balance----- ---- -------0$ 0.00 $100.001$16.13 $ 83
阅读全文
posted @
2011-02-03 08:29
balian
阅读(823)
推荐(0) 编辑
《Python核心编程》第二版第97页第五章练习 续四
摘要:和大家分享自己完成的《Python核心编程》答案。因为不是来自官方资源,是自己的的练习,可能有误或者并非最好的解决办法。5-13.转换。写一个函数把小时和分钟所表示的时间转换成为只用分钟表示的时间。【答案】代码如下:def conversion(a, b): return a * 60 + btime = raw_input('Please input the time in HH:MM format: ... ')t = time.split(':')print conversion(int(t[0]), int(t[1]))5-14.银行利息。写一个函数,以
阅读全文
posted @
2011-02-02 01:28
balian
阅读(901)
推荐(0) 编辑
《Python核心编程》第二版第97页第五章练习 续三
摘要:和大家分享自己完成的《Python核心编程》答案。因为不是来自官方资源,是自己的的练习,可能有误或者并非最好的解决办法。5-10.转换。写一对函数来进行华氏度到摄氏度的转换。转换公式为C = (F - 32) * (5 / 9)应该在这个练习中使用真正的除法,否者你会得到不正确的结果。【答案】代码如下:>>> def a(b):... print (b - 32.) * (5. / 9.)...>>> a(475)246.111111111>>> a(200)93.33333333335-11.取余。(a)使用循环和算术运算,求出0~20之
阅读全文
posted @
2011-02-01 08:10
balian
阅读(970)
推荐(0) 编辑
《Python核心编程》第二版第97页第五章练习 续二
摘要:《Python核心编程》第二版第97页第五章练习和大家分享自己完成的《Python核心编程》答案。因为不是来自官方资源,是自己的的练习,可能有误或者并非最好的解决办法。【推荐】晒一晒一个程序员《读过的好书》http://debug-sai.blogbus.com/logs/42178629.html5-8.几何。计算面积和体积。(a)正方形和立方体(b)圆和球【答案】代码如下:a = float(raw_input('Please input a numner: ... '))print 'If this is a side length of a square ...
阅读全文
posted @
2011-01-28 12:49
balian
阅读(1158)
推荐(0) 编辑
《Python核心编程》第二版第97页第五章练习 续一 -Python核心编程答案-自己做的-
摘要:这里列出的答案不是来自官方资源,是我自己做的练习,可能有误。5-5.取余。取一个任意小于1美元的金额,然后计算可以换成最少多少枚硬币。硬币有1美分、5美分、10美分、25美分4种。1美元等于100美分。举例来说,0.76美元计算结果应该是3枚25美分,1枚1美分。类似于76枚1美分,2枚25美分+2枚10美分+1枚5美分+1枚1美分这样的结果都是不符合要求的。【答案】代码如下:def verify(a): b = '0123456789' if len(a) == 2 and a[0] in b and a[1] in b: return True else: return F
阅读全文
posted @
2011-01-27 12:04
balian
阅读(1618)
推荐(0) 编辑
《Python核心编程》第二版第97页第五章练习 -Python核心编程答案-自己做的-
摘要:这里列出的答案不是来自官方资源,是我自己做的练习,可能有误。本章的练习可以先通过应用程序的形式实现。一旦功能齐备并且调试通过,建议读者将自己的代码功能用函数封装起来,以便在后面的练习中重用代码。关于编程风格在这儿提醒一下,最好不要在函数内使用print语句输出信息,而是通过return语句返回必要的值。文章来自博客园。这样调用函数的代码就可以自己处理显示方式。这样你的代码就适应性更广,更便于重用。【推荐】很喜欢下面这个博客的文章,故推荐之。http://www.cnblogs.com/lua5/5-1.整型。讲讲Python普通整型和长整型的区别。【答案】Python的标准整数类型是最通用的数
阅读全文
posted @
2011-01-24 01:07
balian
阅读(1302)
推荐(0) 编辑
《Python核心编程》第二版第75页第四章练习
摘要:4-1.Python对象。与所有Python对象有关的三个属性是什么?请简单的描述一下。【答案】所有的Python对象都拥有三个特性:身份,类型和值。身份:每一个对象都有一个唯一的身份标识自己,任何对象的身份可以使用内建函数id()来得到。这个值可以被认为是该对象的内存地址。类型:对象的类型决定了该对象可以保存什么类型的值,可以进行什么样的操作,以及遵循什么样的规则。可以使用内建函数type()查看对象的类型。在Python中类型也是对象。值:对象表示的数据项。4-2.类型。不可更改(immutable)指的是什么?Python的哪些类型是可更改(mutable)的,哪些不是?【答案】这部分答
阅读全文
posted @
2011-01-22 12:23
balian
阅读(1313)
推荐(0) 编辑
《Python核心编程》第二版第55页第三章练习 续二 -Python核心编程答案-自己做的-
摘要:3-10.异常。使用类似readTextFile.py中异常处理的方法取代makeTextFile.py中对os.path.exists()的调用。反过来,用os.path.exists()取代readTextFile.py中的异常处理方法。【答案】代码如下:def makeTextFile(): import os ls = os.linesep # get filename while True: fname = raw_input('Enter file name: ') try: open(fname, 'r') print" *** ERRO
阅读全文
posted @
2011-01-21 10:19
balian
阅读(980)
推荐(0) 编辑
怎样判断用户输入的是否为数字 续
摘要:判断输入是否为数字 续这里用到了检测与处理异常的try-except语句。下面是一个例子,在Python交互环境执行的: a = int(raw_input('Please input an integer ... '))Please input an int number ... tTraceback (most recent call last): File "stdin", line 1, in moduleValueError: invalid literal for int() with base 10: 't'那么,如果使用了try-except语句,结果就是这样的。
阅读全文
posted @
2011-01-20 21:06
balian
阅读(1493)
推荐(0) 编辑