随笔分类 -  Python

上一页 1 2 3 4 下一页
《Python核心编程》第二版第326页第十二章练习 续一 -Python核心编程答案-自己做的-
摘要:这是自己做的练习,可能有错误,欢迎讨论和各种优化重构方案。12-4. 名称空间和变量作用域。名称空间和变量作用域有什么不同。 【答案】 名称空间(Namespaces)是名称(标识符)到对象的映射。名称空间分为局部名称空间(Local Namespaces),全局名称空间(Global Namespaces)和内建名称空间(Build-in Namespaces)。 Build-in Namespaces首先被Python解释器加载成为Active Namespaces,由__buildins__模块中的名字构成。 Global Namespaces随后加载为A... 阅读全文
posted @ 2012-08-12 00:12 balian 阅读(960) 评论(4) 推荐(0) 编辑
《Python核心编程》第二版第326页第十二章练习 -Python核心编程答案-自己做的-
摘要:这是自己做的练习,可能有错误,欢迎讨论和各种优化重构方案。12-1. 路径搜索和搜索路径。路径搜索和搜索路径之间有什么不同。 【答案】 路径搜索(Search Path)搜索路径(Path Search),前者指查找某个文件的操作(the pursuit of a file),后者是去查找一组目录(through a set of directories)。本文来自博客园balian 默认搜索路径是编译或者安装时指定。查看当前搜索路径参看下例。可以用列表的append()方法添加搜索路径。>>> import sys>>> sys.path[' 阅读全文
posted @ 2012-08-11 08:48 balian 阅读(702) 评论(2) 推荐(0) 编辑
《Python核心编程》第二版第308页第十一章练习 续五 -Python核心编程答案-自己做的-
摘要:本博客列出的答案不是来自官方资源,是我自己做的练习,如果有疑问或者错误,欢迎讨论。11-18. 同步化函数调用。复习一下第6章中当引入浅拷贝和深拷贝的时候,提到的丈夫和妻子情形(6.20小结)。他们共用了一个普通账户,同时对他们银行账户访问时会发生不利影响。创建一个程序,让调用改变账户收支的函数必须同步。 【未完】 目前感觉本题有难度,暂时押后。11-19. Variable Scope. Earlier in the chapter (see Example 11.9 on p. 466), we left determining the output of scope.py... 阅读全文
posted @ 2012-08-09 19:51 balian 阅读(650) 评论(0) 推荐(0) 编辑
《Python核心编程》第二版第308页第十一章练习 续四 -Python核心编程答案-自己做的-
摘要:本博客列出的答案不是来自官方资源,是我自己做的练习,如果有疑问或者错误,欢迎讨论。11-16. 更新easyMath.py。这个脚本,如例子11.1描绘的那样,以入门程序来帮助年轻人强化他们的数学技能。通过加入乘法作为可支持的操作来更进一步提升这个程序。额外的加分:也加入除法;这比较难做因为你要找到有效的整形除数,幸运的是,已经有代码来确定分子比分母大,所以不需要支持分数。 【答案】 添加了乘法后,代码如下:#-*- encoding: utf-8 -*-# easyMath.pyfrom operator import add, sub, mulfrom random imp... 阅读全文
posted @ 2012-08-07 08:17 balian 阅读(694) 评论(1) 推荐(0) 编辑
《Python核心编程》第二版第308页第十一章练习 续三 -Python核心编程答案-自己做的-
摘要:11-14. 递归。我们也来看下在第8章中的斐波纳契数列。重写你先前计算斐波纳契数列的解(练习8-9)以便你可以使用递归。 【答案】本文来自博客园balian 代码如下:#-*- encoding: utf-8 -*-def fibonacci(n): "该函数能生成数列的第n个值" returnn >= 2 and fibonacci(n - 2) + fibonacci(n - 1) or n# From www.cnblogs.com/balian/fiboseq=[]number = 10for i in range(number): fiboseq.... 阅读全文
posted @ 2012-08-06 06:17 balian 阅读(835) 评论(1) 推荐(0) 编辑
《Python核心编程》第二版第308页第十一章练习 续二 -Python核心编程答案-自己做的-
摘要:本博客列出的答案不是来自官方资源,是我自己做的练习,如果有疑问或者错误,欢迎讨论。11-12. 传递函数。给在这章中描述的testit()函数写一个姊妹函数。timeit()会带一个函数对象(和参数一起)并计算出用了多少时间来执行这个函数,而不是测试执行时的错误。返回下面的状态:函数返回值、消耗的时间。本文来自博客园。你可以用time.clock()或者time.time(),无论哪一个给你提了较高的精度(一般的共识是在POSIX上用time.time(),在win32系统上用time.clock())。注意:timeit()函数与模块timeit不相关(在python2.3中引入)。 ... 阅读全文
posted @ 2012-08-05 03:32 balian 阅读(1161) 评论(0) 推荐(0) 编辑
《Python核心编程》第二版第308页第十一章练习 续一 -Python核心编程答案-自己做的-
摘要:本博客列出的答案不是来自官方资源,是我自己做的练习,如果有疑问或者错误,欢迎讨论。 原书(英文版)作者的blog :) http://wescpy.blogspot.ca/11-7. 用map()进行函数式编程。给定一对同一大小的列表,如[1, 2, 3, ...]和['abc', 'def', 'ghi', ...],将两个列表归并为一个由每个列表元素组成的元组的单一列表,以使我们的结果看起来像这样:{[(1, 'abc'), (2, 'def'), (3, 'ghi'), ...}。(虽然这问题 阅读全文
posted @ 2012-08-03 05:41 balian 阅读(1123) 评论(1) 推荐(0) 编辑
三处设置,使Python的Eclipse开发环境(使用PyDev)支持中文
摘要:(a)Eclipse的Window菜单Editors设置: Eclipse工具条 -> Window -> Preferences -> General -> Editors -> Text Editiors -> Spelling (b)Eclipse的Window菜单Workspace设置: Eclipse工具条 -> Window -> Preferences -> General –> Workspace(c)Python源代码头需要加入一个额外的编码指示说明。书《Python核心编程》第二版324页说道,只要在你的Pytho 阅读全文
posted @ 2012-08-01 11:32 balian 阅读(1778) 评论(1) 推荐(0) 编辑
《Python核心编程》第二版第308页第十一章练习
摘要:本博客列出的答案不是来自官方资源,是我自己做的练习,如果有疑问或者错误,欢迎讨论。11-1. 参数。比较下面3个函数: def countToFour1(): for eachNum in range(5): print eachNumdef countToFour2(n): for eachNum in range(n, 5): print eachNumdef countToFour3(n=1): for eachNum in range(n, 5): print eachNum给定如下的输入直到程序输出,你认为会发生什么?向... 阅读全文
posted @ 2012-07-30 08:43 balian 阅读(1697) 评论(0) 推荐(0) 编辑
使用cf.SyntaxHighighter作为Windows Live Writer 2011的插件发布Python代码到博客园
摘要:安装包cf.SyntaxHighighter.msi v1.2下载地址:http://www.cnblogs.com/yaoshiyou/archive/2009/11/25/1610901.html软件界面插入后效果from random import randint def leapYear(year): a4 = year % 4 a100 = year % 100 a400 = year % 400 if (a4 == 0 and a100 != 0) or a400 == 0: return True yearList = []for each... 阅读全文
posted @ 2012-07-29 11:48 balian 阅读(369) 评论(0) 推荐(0) 编辑
《Python核心编程》第二版第230页第九章练习 -Python核心编程答案-自己做的-
摘要:本博客列出的答案不是来自官方资源,是我自己做的练习,可能有误。9-1.文件过滤。显示一个文件的所有行,忽略以井号(#)开头的行。这个字符被用做Python,Perl,Tcl,等大多数脚本文件的注释符号。附加题:处理不是第一个字符开头的注释。【答案】(a)代码如下:fobj = open('c:\Python Test\P_1.txt')for eachLine in fobj: if eachLine[0] != '#': print eachLine,fobj.close()文件P_1.txt具体是:applebanana#orangeorange#orang 阅读全文
posted @ 2012-01-19 08:58 balian 阅读(1719) 评论(0) 推荐(0) 编辑
《Python核心编程》第二版第209页第八章练习 续三 -Python核心编程答案-自己做的-
摘要:本博客列出的答案不是来自官方资源,是我自己做的练习,可能有误。8-11.文本处理。要求输入一个姓名列表,输入格式是“Last Name, First Name”即姓逗号名。编写程序处理输入,如果用户输入错误,比如“Last Name First Name,”,请纠正这些错误,并通知用户。同时你还需要记录输入错误次数。当用户输入结束后,给列表排序,然后以“姓,名”的顺序显示。输入输出示例(你不需要完全按照这里的例子完成):% nametrack.pyEnter total number of names: 5Please enter name 0: Smith, JoePlease enter 阅读全文
posted @ 2012-01-14 07:17 balian 阅读(716) 评论(0) 推荐(0) 编辑
《Python核心编程》第二版第209页第八章练习 续二 -Python核心编程答案-自己做的-
摘要:本博客列出的答案不是来自官方资源,是我自己做的练习,可能有误。8-9.斐波那契数列。斐波那契数列形如1,1,2,3,5,8,13,21等等。也就是说,下一个值是序列中前两个值之和。写一个函数,给定N,返回第N个斐波那契数数字。例如,第1个斐波那契数字是1,第6个是8。【答案】代码如下:def Fibonacci(number): fs = [0, 1] i = 1 for i in range(number - 1): a = fs[-1] + fs[-2] fs.append(a) i += 1 print fs[1:] ... 阅读全文
posted @ 2012-01-12 08:12 balian 阅读(522) 评论(0) 推荐(0) 编辑
《Python核心编程》第二版第209页第八章练习 续一 -Python核心编程答案-自己做的-
摘要:8-6.素因子分解。以刚才练习中的isprime()和getfactors()函数为基础编写一个函数,它接受一个整型作为参数,返回该整型所有素数因子的列表。这个过程叫做求素因子分解,它输出的所有因子之积应该是原来的数字。注意列表里可能有重复的元素。例如输入20,返回的结果应该是[2,2,5]。【答案】代码如下:def isprime(number): switch = True if number <= 1: switch = False for i in range(2, number / 2 + 1): if number % i == 0: switch... 阅读全文
posted @ 2012-01-11 07:24 balian 阅读(2241) 评论(0) 推荐(0) 编辑
《Python核心编程》第二版第209页第八章练习 -Python核心编程答案-自己做的-
摘要:8-1.条件语句。请看下面的代码:# statement Aif x > 0: # statement B passelif x < 0: # statement C passelse: # statement D pass# statement E(a)如果x<0,上面哪个语句(A,B,C,D,E)将被执行?(b)如果x=0,上面哪个语句将被执行?(c)如果x>0,上面哪个语句将被执行?【答案】(a)ACE(b)ADE(c)ABE可以实验一下这个代码,代码如下:x = int(raw_input('Please input X ... '))print 阅读全文
posted @ 2012-01-10 07:08 balian 阅读(699) 评论(0) 推荐(0) 编辑
这是一个测试
摘要:正文,使用Windows Live Writer发布。print 'i am back' 阅读全文
posted @ 2011-12-16 11:38 balian 阅读(145) 评论(0) 推荐(0) 编辑
Python的绿色安装
摘要:这是在网上搜到的办法,我下载了Python 2.7.2 (Windows 64bit)试了一下,没遇到问题。我的Python安装文件是python-2.7.2.amd64.msi操作系统是Win7 Ulitmate,安装后文件夹放在D盘。第一次安装时,运行python-2.7.2.amd64.msi,在提示安装路径的时候选D:\Python27,在提示是否为当前用户安装还是所有用户安装时,选只有当前用户使用。于是Python的所有资源就都在D:\Python27文件夹下了。只要保存这个文件夹,下次重装系统只要复制这个文件夹到D盘根目录,就能直接使用。同理,如果你有第二台Win7 (64bit) 阅读全文
posted @ 2011-12-13 05:53 balian 阅读(2942) 评论(1) 推荐(0) 编辑
怎样在Win7 64位旗舰版安装Python+Eclipse开发环境
摘要:自从上周抛弃了WinXP转而安装了Win7,64位后,尝试安装Python+Eclipse遇到了一点小问题。现在已经解决,将安装顺序记录如下,供参考。Setp1,到ORACLE网站下载64位的JDK。http://www.oracle.com/technetwork/java/javase/downloads/index.html下载JDK,我下载的是jdk-6u26-windows-x64.exe安装后需要手工添加系统环境变量。JAVA_HOME = C:\Java\jdk1.6.0_23 (路径最好不要带空格)PATH =...;$JAVA_HOME/bin;$JAVA_HOME/jre/ 阅读全文
posted @ 2011-06-19 13:23 balian 阅读(8949) 评论(1) 推荐(0) 编辑
《Python核心编程》第二版第186页第七章练习 续一
摘要:7-3.字典和列表的方法。(a)创建一个字典,并把这个字典中的键按照字母顺序显示出来。(b)现在根据已经按照字母顺序排列好的键,显示出这个字典中的键和值。(c)同(b),但这次是根据已按照字母顺序排序好的字典的值,显示出这个字典中的键和值(注意:对字典和哈希表来说,这样做一般没什么实际意义,因为大多数访问和排序(如果需要)都是基于字典的键,这里只把它作为一个练习)。【答案】(a)代码如下:>>> my_dict = {'a': 4, 'b': 3, 'c': 2, 'd': 1}>>> my_d 阅读全文
posted @ 2011-06-11 10:38 balian 阅读(994) 评论(7) 推荐(0) 编辑
《Python核心编程》第二版第186页第七章练习
摘要:7-1.字典方法。哪个字典方法可以用来把两个字典合并到一起。【答案】dict.update(dict2)将字典dict2的键-值对添加到字典dict7-2.字典的键。我们知道字典的值可以是任意的Python对象,那字典的键又如何呢?请试着将除数字和字符串意外的其他不同类型的对象作为字典的键,看看哪些类型可以,哪些不行。对那些不能作为字典的键的对象类型,你认为是什么原因呢?【答案】Python对象:可哈希对象(不变类型)---数字,字符串和元组(但要加以限制)不可哈希对象(可变类型)--列表,字典,集合需要注意的是:值相等的数字代表同一个键,元组作为键时,其元素必须是可哈希的。内建函数hash( 阅读全文
posted @ 2011-06-10 10:39 balian 阅读(1980) 评论(0) 推荐(0) 编辑

上一页 1 2 3 4 下一页