
Python是一门非常强大的高级程序语言,其具有语法简洁、可读性高、开发效率高、可移植性、支持自行开发或第三方模块、可调用C和C++库、可与Java组建集成等优点,已被应用到Web开发、操作系统管理、科学计算、自动化运维和人工智能等众多领域。本书以项目引领任务驱动方式进行编写,以实现最简单功能为切入点,由浅入深地引导学生完成项目,辅以知识点讲解和相关知识扩展,拓展学生的学习思维,突出问题求解方法和思维能力训练。全书共12个项目,主要内容有了解Python、编程环境的搭建和调试、条件语句、循环结构、序列、函数、文件操作、面向对象的程序设计、错误和异常的处理、模块和套接字、Scapy/Kamene模块和Scrapy模块。其中,项目1~项目9以Windows为平台,系统全面地讲解了Python3的基础知识,项目10~项目12以Kali Linux为平台,介绍了Python的网络编程和数据爬虫等知识。本书适合作为高职院校计算机相关专业程序设计的入门教材和非计算机专业程序设计课程的教材,也可以作为从事程序设计与应用开发的工程技术人员的参考书。
前 言 Python是一门功能非常强大的高级程序语言,已被应用到Web开发、操作系统管理、科学计算、自动化运维和人工智能等众多领域。在2009—2019 年 TIOBE 编程语言排行榜中,Python都有不错的排名。Python具有语法简洁、可读性高、开发效率高、可移植性好、支持自行开发或第三方模块、可调用C和C++库、可与Java组建集成等优点。 本书以项目引领任务驱动方式进行编写,根据高职学生的学习特点,采用通俗易懂的项目,让学生在娱乐中完成Python编程的基本语法和用法,提高学生的学习兴趣,由浅入深地引导学生全面系统地掌握Python编程技术。通过“项目回顾和知识拓展”帮助学生梳理和拓展知识点,并在每个项目结束后布置一个同步练习,以扩展学生的学习思维,训练学生的动手能力和自学能力,每个项目还设置了课后作业,帮助学生复习巩固所学的知识。 本书将传统的语法教学融入有趣的简单实践中,随着多个项目的推进,让学生在项目实践中学会Python编程的语法,并在网络编程和数据爬虫项目中得以应用和实践,培养学生的创新能力,也为学生进一步学习Python安全编程和大数据、人工智能等新技术打下基础。 本书所有代码均在Python 3.7中测试通过,书中代码运行的IDE为PyCharm,它具有智能代码编辑器,能理解Python的特性并提供卓越的“生产力”推进工具:自动代码格式化、代码完成、重构、自动导入和一键代码导航等。这些功能在先进代码分析程序的支持下,使PyCharm成为Python专业开发人员和刚起步人员使用的有力工具。 另外,为辅助教师教学和帮助学生学习,我们将提供网站资源并提供配套视频、源代码、习题、教学课件等资源。 本书由绍兴职业技术学院、浙江经济职业技术学院、杭州职业技术学院、浙江水利水电学院、浙江医药高等专科学校等院校合作编写,期间也得到了企业的大力支持。本书由傅彬担任主编,毕晓东担任副主编,刘志荣、宣乐飞、宣凯新、谢楠、谢晓飞等参与编写。 本书的编写得到了浙江省普通高校“十三五”第二批新形态教材建设项目支持(项目编号:JC1201906),在此表示衷心的感谢。 鉴于作者水平有限,疏漏与不妥之处在所难免,敬请同行专家与广大读者批评指正。 编 者 2019年7月
目 录 项目1 了解Python 任务1 认识Python 任务2 为什么学习Python 任务3 如何学习Python 课后作业 项目2 编程环境的搭建和调试 任务1 在不同操作系统中搭建编程环境 任务2 在不同操作系统中调试Python程序 任务3 PyCharm的使用 任务4 PyCharm的常用设置 任务5 Python基本语法规范 同步练习:在不同操作系统中搭建编程环境和调试Python程序 课后作业 项目3 条件语句—简易计算器的实现 任务1 实现1+1=2 任务2 接收从键盘输入的数字并进行简单计算 任务3 设置简易计算器的计算上下限 任务4 项目回顾与知识拓展 同步练习:猜猜我的幸运数字 课后作业 项目4 循环结构—成语接龙的实现 任务1 接收从键盘输入成语,并连接成长龙 任务2 检查成语首尾字 任务3 避免出现重复的成语 任务4 项目回顾与知识拓展 同步练习:四级制成绩转换器 课后作业 项目5 序列—动物分拣器的实现 任务1 列表的基本用法 任务2 元组的基本用法 任务3 字典的基本用法 任务4 创建动物分类盛放的容器 任务5 制作分拣器 任务6 将动物分拣到对应的容器中 任务7 扩大或减小容器 任务8 项目回顾与知识拓展 同步练习:通讯录 课后作业 项目6 函数—制作会员管理系统 任务1 函数的基本用法 任务2 功能菜单显示 任务3 会员信息添加 任务4 会员信息删除 任务5 会员信息修改 任务6 会员信息显示 任务7 项目回顾与知识拓展 同步练习:改进版会员管理系统 课后作业 项目7 文件操作—恶意代码删除 任务1 文件的基本操作和打开模式 任务2 目录的操作 任务3 批量修改文件名 任务4 批量删除病毒代码 任务5 项目回顾与知识拓展 同步练习:批量删除恶意代码 课后作业 项目8 面向对象的程序设计—银行账户资金交易 任务1 面向过程和面向对象的区别 任务2 创建员工类—类的定义 任务3 创建员工对象 任务4 内置员工类属性 任务5 销毁员工对象(垃圾回收) 任务6 员工类的继承 任务7 方法的重写 任务8 类属性与方法 任务9 项目回顾与知识拓展 同步练习:管理银行账户 课后作业 项目9 错误和异常的处理 任务1 语法错误的识别与处理 任务2 捕捉异常 任务3 异常处理 任务4 项目回顾与知识拓展 同步练习:捕捉和处理异常 课后作业 项目10 模块和套接字—端口扫描器的实现 任务1 实现端口扫描 任务2 使用ms17_010漏洞来控制Windows7系统 任务3 端口扫描的原理 任务4 编写端口扫描器程序架构 任务5 导入和创建模块 任务6 创建套接字 任务7 实现端口扫描器基础版 任务8 实现端口扫描器多线程版 任务9 项目回顾与知识拓展 同步练习:跨网段端口扫描器 课后作业 项目11 Scapy/Kamene模块—操作系统判断渗透测试 任务1 安装Scapy模块 任务2 构造数据包 任务3 接收与发送数据包 任务4 操作系统判断 任务5 项目回顾与知识拓展 同步练习:实现SYN DDoS渗透测试 课后作业 项目12 Scrapy模块—爬虫与二级域名枚举 任务1 安装Scrapy模块 任务2 创建Scrapy项目 任务3 分析URL 任务4 分析网页源码 任务5 编写爬虫程序 任务6 爬取数据 同步练习:改进二级域名爬取 课后作业 附录A 课后作业参考答案
http://www.hxedu.com.cn/hxedu/fg/book/bookinfo.html?code=G0373350