登入帳戶  | 訂單查詢  | 購物車/收銀台(0) | 在線留言板  | 付款方式  | 聯絡我們  | 運費計算  | 幫助中心 |  加入書簽
會員登入   新用戶註冊
HOME新書上架暢銷書架好書推介特價區會員書架精選月讀2023年度TOP分類閱讀雜誌 香港/國際用戶
最新/最熱/最齊全的簡體書網 品種:超過100萬種書,正品正价,放心網購,悭钱省心 送貨:速遞 / 物流,時效:出貨後2-4日

2024年10月出版新書

2024年09月出版新書

2024年08月出版新書

2024年07月出版新書

2024年06月出版新書

2024年05月出版新書

2024年04月出版新書

2024年03月出版新書

2024年02月出版新書

2024年01月出版新書

2023年12月出版新書

2023年11月出版新書

2023年10月出版新書

2023年09月出版新書

『簡體書』Python程序设计习题解析

書城自編碼: 2986759
分類: 簡體書→大陸圖書→教材研究生/本科/专科教材
作者: 周元哲
國際書號(ISBN): 9787302466499
出版社: 清华大学出版社
出版日期: 2017-04-01
版次: 1 印次: 1
頁數/字數: 153/260000
書度/開本: 16开 釘裝: 平装

售價:NT$ 209

我要買

share:

** 我創建的書架 **
未登入.



新書推薦:
500万次倾听:陪伤心的人聊聊
《 500万次倾听:陪伤心的人聊聊 》

售價:NT$ 245.0
英国商业500年(见证大国崛起与企业兴衰,启迪未来商业智慧。)
《 英国商业500年(见证大国崛起与企业兴衰,启迪未来商业智慧。) 》

售價:NT$ 367.0
万千心理·儿童心理治疗中的心智化:临床实践指导
《 万千心理·儿童心理治疗中的心智化:临床实践指导 》

售價:NT$ 398.0
自我囚禁的人:完美主义的心理成因与自我松绑(破除你对完美主义的迷思,尝试打破自我评价过低与焦虑的恶性循环)
《 自我囚禁的人:完美主义的心理成因与自我松绑(破除你对完美主义的迷思,尝试打破自我评价过低与焦虑的恶性循环) 》

售價:NT$ 301.0
周易
《 周易 》

售價:NT$ 203.0
东南亚的传统与发展
《 东南亚的传统与发展 》

售價:NT$ 306.0
乾隆制造
《 乾隆制造 》

售價:NT$ 398.0
资治通鉴臣光曰辑存 资治通鉴目录(司马光全集)(全二册)
《 资治通鉴臣光曰辑存 资治通鉴目录(司马光全集)(全二册) 》

售價:NT$ 1316.0

編輯推薦:
Python是一门完全面向对象的程序设计语言,具有简单、现代、类型安全、性能优良等特点,是面向对象程序设计教学的主干语言之一。本书与《Python程序设计基础》(周元哲编著)相配套,针对《Python程序设计基础》各章节中的内容,介绍每章的知识点和重点、难点知识,给出了每章的课后习题答案,并精心设计和安排了相应的习题解析。另外,本书新增4章内容,正则表达式与网络爬虫、Python测试框架、Web开发框架、Python游戏开发。本书可作为高等院校各专业学生学习Python程序设计和软件竞赛的辅导教材,也可作为程序员和社会读者的自学辅助用书。
內容簡介:
本书与《Python程序设计基础》(周元哲编著)配套,针对该教材各章节中的内容,介绍每章的知识点和重点、难点知识,给出了每章的课后习题答案,并精心设计和安排了相应的习题解析。另外,本书新增4章内容: 网络爬虫、软件测试框架、Web开发框架、游戏开发。
本书可作为高等院校各专业程序设计和软件竞赛培训的辅导教材,也可作为程序员、编程爱好者的自学辅助用书和各类培训班的教学辅助用书.
目錄
目录
第1章Python编程概述1
1.1本章要求1
1.2本章知识重点1
1.2.1Python的特点 1
1.2.2Python解释器2
1.2.3Python编辑器4
1.3课后习题答案7
第2章数据类型和表达式10
2.1本章要求10
2.2本章知识重点10
2.2.1数据类型10
2.2.2变量11
2.2.3运算符11
2.3课后习题答案13
2.4习题与解答14
2.4.1习题14
2.4.2习题参考答案14
第3章顺序与选择结构15
3.1本章要求15
3.2本章知识重点15
3.2.13种基本逻辑结构15
3.2.2Python程序设计流程15
3.2.3代码书写缩进16
3.2.4输入与输出16
3.2.5顺序结构16
3.2.6选择结构16
3.3课后习题答案183.4习题与解答20
3.4.1习题20
3.4.2习题参考答案20
第4章循环结构23
4.1本章要求23
4.2本章知识重点23
4.2.1构造循环结构23
4.2.2while语句24
4.2.3for语句24
4.2.4循环嵌套24
4.3课后习题答案26
4.4习题与解答30
4.4.1习题30
4.4.2习题参考答案30
第5章序列与字典35
5.1本章要求35
5.2本章知识重点35
5.2.1序列35
5.2.2列表35
5.2.3元组36
5.2.4字符串37
5.2.5字典37
5.2.6JSON38
5.3课后习题答案39
5.4习题与解答42
5.4.1习题42
5.4.2习题参考答案42
第6章数据结构与算法44
6.1本章要求44
6.2本章知识重点44
6.2.1数据结构44
6.2.2查找和排序46
6.3课后习题答案48
6.4习题与解答51
6.4.1习题51
6.4.2习题参考答案51
第7章函数与模块53
7.1本章要求53
7.2本章知识重点53
7.2.1函数的概念53
7.2.2函数声明和调用53
7.2.3函数的参数54
7.2.4递归函数56
7.2.5变量作用域57
7.3课后习题答案57
7.4习题与解答59
7.4.1习题59
7.4.2习题参考答案59
第8章面向对象程序设计基础63
8.1本章要求63
8.2本章知识重点63
8.2.1对象三大特性63
8.2.2类与对象64
8.2.3继承性64
8.3课后习题答案64
8.4习题与解答66
8.4.1习题66
8.4.2习题参考答案66
第9章文件69
9.1本章要求69
9.2本章知识重点69
9.2.1字符编码69
9.2.2文件分类70
9.2.3文件读写操作70
9.3课后习题答案71
9.4习题与解答72
9.4.1习题72
9.4.2习题参考答案72
第10章用户界面设计74
10.1本章要求74
10.2本章知识重点74
10.2.1界面设计原则74
10.2.2wxPython开发流程74
10.2.3事件处理75
10.3课后习题答案77
10.4习题与解答78
10.4.1习题78
10.4.2习题参考答案79
第11章绘图与科学计算84
11.1本章要求84
11.2本章知识重点84
11.2.1NumPy84
11.2.2Matplotlib85
11.2.3scipy85
11.2.4pandas87
第12章数据库应用90
12.1本章要求90
12.2本章知识重点90
12.2.1关系型数据库90
12.2.2Python连接数据库91
12.2.3Python操作数据库92
12.3课后习题答案92
第13章网络编程95
13.1本章要求95
13.2本章知识重点95
13.2.1TCPIP四层模型95
13.2.2IP地址和端口号96
13.2.3Socket编程96
13.3课后习题答案98
第14章异常处理100
14.1本章要求100
14.2本章知识重点100
14.2.1错误类型100
14.2.2异常处理100
14.2.3PyCharm调试功能101
14.3课后习题答案104
14.4习题与解答104
14.4.1习题104
14.4.2习题参考答案105
第15章网络爬虫107
15.1本章要求107
15.2本章知识重点107
15.2.1网络爬虫简介107
15.2.2正则表达式107
15.2.3Python re模块108
15.2.4从网页上抓取特定信息113
15.2.5保存贴吧网页的小爬虫114
第16章软件测试框架115
16.1本章要求115
16.2本章知识重点115
16.2.1Python与软件测试115
16.2.2用PyUnit进行单元测试117
16.2.3用pywinauto进行GUI测试118
16.2.4用Selenium进行Web测试120
16.2.5用Pylot进行性能测试123
16.3习题与解答127
16.3.1习题127
16.3.2习题参考答案127
第17章Web开发框架131
17.1本章要求131
17.2本章知识重点131
17.2.1MVC设计模式131
17.2.2web2py框架132
17.2.3Django框架137
第18章游戏开发145
18.1本章要求145
18.2本章知识重点145
18.2.1游戏简介145
18.2.2pygame简介145
18.2.3pygame模块147
参考文献154
內容試閱
前言
Python是一种解释型、面向对象、动态数据类型的高级程序设计语言,被列入LAMP(Linux、Apache、MySQL以及PthonPerlPHP),Python语言将代码书写缩进作为语法规定,使得初学者养成良好的编码习惯。Python具有序列、列表、元组和字典等数据结构,便于实现各种算法。作为开源语言,Python外挂各种库,在大数据、科学计算等方面,功能堪比Matlab。因此,作为面向对象的程序设计语言,Python具有简单、现代、类型安全、性能优良,效率高等特点,是计算机等信息学科学生学习程序设计语言的首选之一。本书与《Python程序设计基础》(周元哲编著)相配套,针对《Python程序设计基础》各章(Python编程概述、数据类型和表达式、顺序与选择结构、循环结构、序列与字典、数据结构与算法、函数与模块、面向对象程序设计基础、文件、用户界面设计、绘图、数据库应用、网络编程和异常处理)中的内容,介绍每章的知识重点,给出每章的课后习题答案,并精心设计和安排了相应的习题与解答。另外,本书新增4章内容,包括网络爬虫、软件测试框架、Web开发框架、游戏开发。计算机学院李晓戈、邓万宇等阅读了部分手稿。西北工业大学软件与微电子学院郑炜对本教材的写作大纲、写作风格等提出了很多宝贵的意见。衷心感谢上述各位的支持和帮助。本书在写作过程中参阅了大量中英文专著、教材、论文、报告及网上的资料,限于篇幅,未能一一列出。在此,向有关作者一并表示敬意和衷心的感谢。本书内容精练,文字简洁,结构合理,实训题目经典实用,综合性强,明确定位于面向初、中级读者,由入门起步,侧重提高。特别适合作为高等院校相关专业Python程序设计的教材或教学参考书,也可以供从事计算机应用开发的各类技术人员参考。本书的Python版本为2.7.3,所有程序都在PyCharm编辑器中进行了调试和运行。由于作者水平有限,时间紧迫,本书难免有疏漏之处,恳请广大读者批评指正。作者的电子信箱是zhouyuanzhe@163.com。
作者2016年11月


第5章序列与字典5.1本章要求 了解序列。 掌握列表。 掌握元组。 掌握字符串。 掌握字典。 掌握JSON。5.2本章知识重点〖*45〗5.2.1序列在Python中,最基本的数据结构是序列(sequence)。序列中的元素有序排列,每个元素被分配一个序号,即元素的位置,也称为索引。第一个索引是0,第二个是1,以此类推。也可以采用负号索引,即序列中的最后一个元素位置标记为-1,倒数第二个元素位置为-2,以此类推。Python提供了列表、元组、字符串等序列类型,可以进行某些特定的操作。这些操作包括索引(index)、分片(slice)、加(add)、乘(multiply)以及检查某个元素是否属于序列的成员(成员资格)。除此之外,Python还有计算序列长度、找出最大元素和最小元素的内建函数。5.2.2列表现实生活中的购物清单、手机通讯录等都可以看作一个列表,列表(list)是一组有序项目的数据结构。Python创建列表时,解释器在内存中生成一个类似数组的数据结构来存储数据,数据项自下而上存储。Python列表可以包含混合类型的数据,即在一个列表中的数据类型可以各不相同。列表中的每一个数据称为元素,元素用逗号分隔并放在一对中括号\[和\]中,列表可以认为是下标从0开始的数组。【例51】列表举例。#coding=UTF-8animalist = \[''fox'',''tiger'',''rabbit'',''snake''\]print''Zoo has '',lenanimalist,''animals...''for item in animalist:printitem,print''\\n''animalist.append''pig''del animalist\[0\]animalist.sortfor i in range0,lenanimalist:printanimalist\[i\]运行结果:''Zoo has '', 4, ''animals...''fox tiger rabbit snakepig rabbit snake tiger5.2.3元组元组(tuple)和列表类似,但其元素不可变,即元组一旦创建,用任何方法都不可以修改其元素,因此,元组相当于只读列表。元组与列表相比有如下相同点:(1) 元组的元素与列表一样按定义的次序进行排序。(2) 元组的负数索引与列表一样从尾部开始计数。(3) 元组与列表一样也可以使用分片。元组与列表相比有如下不同点:(1) 元组在定义时所有元素是放在一对圆括号(和)中,而不是方括号。(2) 不能向元组中增加元素,元组没有append或extend方法。(3) 不能从元组删除元素,元组没有remove或pop方法。(4) 元组没有index方法,但是可以使用in方法。(5) 元组可以在字典中被用做键,但是列表不行。元组适合只需进行遍历操作的运算,对于数据进行写保护,其操作速度比列表快。【例52】元组举例。#coding=UTF-8animalist = ''fox'',''tiger'',''rabbit'',''snake''for item in animalist:printitemprint''\\n''animalist.append''pig''运行结果:Traceback most recent call last:File "C:UsersAdministratorPycharmProjectskeygamekeygame.py", line 9, in animalist.append''pig''AttributeError: ''tuple'' object has no attribute ''append''fox tiger rabbit snake5.2.4字符串字符串是用单引号、双引号或者三引号括起来的符号系列,例如以''或"括起来的任意文本,如''abc''、"xyz"等。请注意,''或"本身只是一种表示方式,不是字符串的一部分,因此,字符串''abc''只有a、b、c这3个字符。字符串方法如表5.1所示。表5.1字符串方法函数描述s.indexsub\[,start, end\]s.findsub\[,start,end\]}与index函数一样,但如果找不到会返回-1s.replaceold, new \[,count\]替换s里所有old子串为new子串,count指定多少个可被替换s.countsub\[,start,end\]s.split字符串的split函数默认分隔符是空格。如果没有分隔符,就把整个字符串作为列表的一个元素s.joinjoin方法是split方法的逆方法,用来把字符串连接起来s.lower返回将大写字母变成小写字母的字符串s.upper返回将小写字母变成大写字母的字符串5.2.5字典字典中的元素由一对称为键和值的项构成,元素的键和值之间用冒号分隔,元素之间用逗号分隔,整体用一对大括号{和}括起来。字典语法结构如下:dict_name={key1:value1,key2:value2,}对于字典,应注意如下几点:(1) 键必须是唯一的。(2) 键和值之间用冒号分隔,而各个元素之间用逗号分隔,所有这些都包括在大括号中。(3) 元素没有顺序。【例53】字典举例。#coding=utf-8dict1 ={''zhang'':"张辉",''wang'':"王强",''li'':"李冰",''zhao'':"赵薇"}dict1\[''huang''\] = ''黄家驹''del dict1\[''zhao''\]for firstname,name in dict1.items:print firstname,name运行结果:li 李冰wang 王强huang 黄家驹zhang 张辉5.2.6JSONJSONJavaScript Object Notation,JavaScript对象表示法)是一种轻量级的数据交换格式。JSON不但易于人阅读和编写,而且易于计算机解析和生成。其书写格式为名称:值,例如"firstName":"John"。Python 2.6以上版本自带 JSON 模块,具有序列化(encoding)与反序列化(decoding)。1. 序列化序列化是指将Python对象编码转换成JSON字符串,采用json.dumps方法。【例54】序列化举例。 import json data = \[{''a'':"A",''b'':2,4,''c'':3.0}\] print "DATA:",reprdataDATA: \[{''a'': ''A'', ''c'': 3.0, ''b'': 2, 4}\] data_string = json.dumpsdata print "JSON:",data_stringJSON: \[{"a": "A", "c": 3.0, "b": \[2, 4\]}\]2. 反序列化反序列化是指将JSON格式字符串解码转换成Python对象,采用json.loads方法。【例55】反序列化举例。 import json data = \[{''a'':"A",''b'':2,4,''c'':3.0}\] data_string = json.dumpsdata print "ENCODED:",data_stringENCODED: \[{"a": "A", "c": 3.0, "b": \[2, 4\]}\] decoded = json.loadsdata_string print "DECODED:",decodedDECODED: \[{u''a'': u''A'', u''c'': 3.0, u''b'': \[2, 4\]}\] print "ORIGINAL:",typedata\[0\]\[''b''\]ORIGINAL: print "DECODED:",typedecoded\[0\]\[''b''\]DECODED: 5.3课后习题答案1. 输入一段英文,求其字符串长度,并求出其中包含多少个单词。【解答】s= raw_input"please input a string:"len=lenscounter=0for i in s.split'' '':if i:counter =1print "The length is:%.f"%lenprint "The counter is:%.f"%counter运行结果:please input a string:I am a boyThe length is:10The counter is:42. 输入10个成绩,进行优、良、中、及格、不及格的统计。【解答】counter=0exce=0;good=0;normal=0;pas=0;bad=0while counter=90:exce =1elif number=80:good =1elif number=70:normal =1elif number=60:pas =1else:bad =1counter =1print "exce is:%.f"%exceprint "good is:%.f"%goodprint "normal is:%.f"%normalprint "pas is:%.f"%pasprint "bad is:%.f"%bad运行结果:please input a score:67please input a score:45please input a score:90please input a score:44please input a score:88please input a score:97please input a score:36please input a score:98please input a score:78please input a score:67exce is:3good is:1normal is:1pas is:2bad is:33. 输入10个学生的姓名和成绩构成的字典,按照成绩大小排序。【解答】studscore = {}counter=0while counter studscore = {''a'': 45, ''b'': 78, ''c'': 40, ''d'': 96, ''e'': 65, ''f'': 90, ''g'': 78,''h'': 99, ''i'': 60, ''j'': 87} studscore.values\[45, 40, 78, 65, 96, 78, 90, 60, 99, 87\] studscore.keys\[''a'', ''c'', ''b'', ''e'', ''d'', ''g'', ''f'', ''i'', ''h'', ''j''\]5. 任意输入一串字符,输出其中的不同字符及其个数。例如,输入abcdefgabc,输出为a-2,b-2,c-2,d-1,e-1,f-1,g-1。【解答】#!usrbinenv python# coding=utf-8s=raw_input"please input string: "ms = setsfor item in ms:print item,''-'',s.countitem运行结果:please input string: abcdcbxdcbaxbcca-2x-2c-5b-4d-25.4习题与解答〖*45〗5.4.1习题1. 在列表中输入多个数据作为圆的半径,得出相应的圆的面积。2. 将3行3列的矩阵按其形状输出,例如,输入为\[\[1,2,3\],\[4,5,6\],\[7,8,9\]\],输出为1234567893. 已知列表b1=\[1,2,3\]和b2=\[2,3,4\],求b1和b2的交集和差集。4. 实现Python中的字典和JSON互转操作。5.4.2习题参考答案1. 在列表中输入多个数据作为圆的半径,得出相应的圆的面积。【解答】radius=input''please input radiuses in list''for r in radius:print ''the area of the circle with the radius of %f is:'' %r,3.14rr运行结果:please input radiuses in list\[2,3,4\]the area of the circle with the radius of 2.000000 is: 12.56the area of the circle with the radius of 3.000000 is: 28.26the area of the circle with the radius of 4.000000 is: 50.242. 将3行3列的矩阵按其形状输出,例如,输入为\[\[1,2,3\],\[4,5,6\],\[7,8,9\]\],输出为【解答】a=input''please input a 33 array:''for x in a:s=''''for y in x:s1=''%6d''%ys=s s1print s运行结果:please input a 33 array:\[\[1,2,3\],\[4,5,6\],\[7,8,9\]\]1234567893. 已知列表b1=\[1,2,3\]和b2=\[2,3,4\],求b1和b2的交集和差集。【解答】(1) 交集:b1=\[1,2,3\]b2=\[2,3,4\]b3 = \[val for val in b1 if val in b2\]print b3运行结果:\[2, 3\](2) 差集:b1=\[1,2,3\]b2=\[2,3,4\]b3= \[val for val in b1 if val not in b2\]print b3运行结果:\[1\]4. 实现Python中的字典和JSON互转操作。【解答】Python的字典和JSON在表现形式上非常相似,实际上JSON就是Python字典的字符串表示。 import json stu = ''{"name": "zhang san", "sex": "male", "age": 25}'' b = json.loadsstu b.values\[25, ''zhang san'', ''male''\]

 

 

書城介紹  | 合作申請 | 索要書目  | 新手入門 | 聯絡方式  | 幫助中心 | 找書說明  | 送貨方式 | 付款方式 台灣用户 | 香港/海外用户
megBook.com.tw
Copyright (C) 2013 - 2024 (香港)大書城有限公司 All Rights Reserved.