版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第1章绪论面向师范生的Python编程导论面向师范生的Python编程导论课程总览2第1章绪论本课程将带你从零开始学习Python编程第1章绪论Python简介与环境搭建第2章数据与运算变量、类型、运算符第3章条件语句布尔表达式与分支第4章循环语句while与for循环第5章容器与数据结构列表、元组、字典、字符串第6章函数函数定义与递归第7章学科编程案例跨学科编程实践本章学习目标4第1章绪论知识目标理解程序的基本概念了解Python语言的特点掌握编译型与解释型语言的区别了解Python的发展历程认识PythonIDLE编程环境能力目标能够独立安装Python环境熟练使用IDLE编写和运行代码掌握print()函数的基本用法掌握input()函数实现人机交互能够编写简单的Python程序本章课时安排(4课时)6第1章绪论课时教学内容重点/难点活动设计第1课时程序的概念与Python简介程序的基本操作概念讲解+讨论第2课时Python安装与IDLE环境环境搭建实操练习第3课时第一个Python程序print()函数编程实践第4课时人机互动程序input()函数项目实践提示建议每课时预留10分钟进行实践操作,让学生在动手编写代码中学习。1.1Python编程了解程序的基本概念,认识Python语言的特点与优势1.1.1程序的概念9第1章绪论·1.1Python编程什么是程序?程序(Program)告诉计算机应如何完成一个计算任务。计算可以是数学运算(如解方程),也可以是符号运算(如查找和替换文档中的单词。程序的本质计算机是由数字电路组成的运算机器,只能对数字做运算程序能做符号运算,是因为符号在计算机内部也是用数字表示的声音和图像在计算机内部也用数字表示,经硬件设备转换成人可感知的形式程序的五大基本操作11第1章绪论·1.1Python编程1输入(Input)从键盘、文件或其他设备获取数据2输出(Output)把数据显示到屏幕,或存入文件3基本运算数据访问和数学运算(加减乘除)4测试和分支测试条件,根据结果执行不同操作5循环重复执行一系列操作任何复杂的程序都可以由这五种基本操作组合而成示例:三角形面积计算过程13第1章绪论·1.1Python编程已知三角形的底和高分别为a、b,求三角形的面积输入底a,高b→计算面积=a*b/2→输出面积结果程序读取用户输入的三角形底和高的数据,根据面积公式进行计算,输出结果任务1.1已知三角形的三条边长分别为a、b、c,如何求三角形的面积?请画出相对应的计算过程。(提示:海伦公式)1.1.2为什么学习Python15第1章绪论·1.1Python编程编程需要用到程序设计语言。常用的程序设计语言有C、C++、Java、JavaScript等,也包括Python。Python是当前排名第一的编程语言Python在教育领域的应用17第1章绪论·1.1Python编程高中信息技术课程Python是当前高中阶段信息技术课程使用的编程语言新课标将Python纳入信息技术课程作为师范生,掌握Python编程技能非常重要未来任教信息技术课的必备技能人工智能与大数据Python在人工智能领域被广泛使用大数据分析的首选语言机器学习框架(TensorFlow、PyTorch)数据科学工具(NumPy、Pandas)逐渐成为编程入门的首选语言HelloWorld程序对比19第1章绪论·1.1Python编程以最简单的程序——在屏幕上输出”HelloWorld!”为例,对比三种语言Pythonprint("HelloWorld!")Python仅需一行代码C语言#include<stdio.h>intmain(){printf("HelloWorld!");
return
0;}C语言需要基础结构JavapublicclassHelloWorld{publicstaticvoidmain(String[]args){System.out.println(
"HelloWorld!");}}Java结构更复杂Python的优势21第1章绪论·1.1Python编程简洁优雅语法简单,代码可读性强,对初学者友好易于学习无需掌握复杂细节即可入门跨平台可在Windows、Mac、Linux上运行丰富的库拥有大量标准库和第三方库社区活跃全球庞大的开发者社区支持应用广泛AI、大数据、Web、自动化等领域Lifeisshort,youneedPython.—BruceEckel思考与讨论23第1章绪论·1.1Python编程思考题代码1.1(Python)、1.2(C语言)和1.3(Java)的HelloWorld程序有哪些相似之处?请从以下几个方面思考:1.都有输出函数/语句2.都有字符串”HelloWorld!”3.程序的基本结构延伸思考1.为什么Python只需要一行代码,而C和Java需要更多?2.这种简洁性对编程学习有什么影响?3.在什么场景下,C或Java可能比Python更适合?1.1.3Python是一种解释型语言25第1章绪论·1.1Python编程高级程序设计语言可以分为两大类:编译型和解释型特性编译型语言(如C)解释型语言(如Python)执行方式先编译成机器码再执行逐行解释执行跨平台不能跨平台,需分别编译可轻松跨平台运行效率较高较低(实时翻译)开发效率较低(需编译步骤)较高(直接运行)代码安全编译后不易查看源码源码可见提示Python是一种解释型语言,只要操作系统中安装了Python解释器,即可运行Python程序。三种语言的执行流程27第1章绪论·1.1Python编程编译型语言(C)源代码(.c)→编译器(Compiler)→机器码(.exe)解释型语言(Python)源代码(.py)→解释器(Interpreter)→逐行执行混合型语言(Java)源代码(.java)→编译器→字节码(.class)→JVM解释执行重要概念:机器语言29第1章绪论·1.1Python编程计算机只能理解机器语言计算机的中央处理器(CPU)只能识别0和1,内存和硬盘也只能存储0和1。当我们使用编程语言完成代码后,需要把代码转换成机器语言,才能使计算机为我们服务,执行代码并解决问题。高级程序设计语言使用容易理解和记忆的字符或单词作为关键字,开发效率高,便于读写。Python、C、Java都是高级程序设计语言。1.1.4Python的发展历程31第1章绪论·1.1Python编程Python的诞生Python由荷兰程序员GuidovanRossum开发,最早于1991年发布,1.0版本于1994年发布。目前主流的Python版本是3.x版本。1991Python首次发布1994Python1.0发布2000Python2.0发布2008Python3.0发布2020Python2停止维护2022Python排名第一Python名称的由来33第1章绪论·1.1Python编程有趣的事实虽然单词Python的中文翻译是”蟒蛇”,但是Python语言的由来与蟒蛇毫无关系!这种程序语言命名为Python,是因为其创造者GuidovanRossum非常喜欢英国的喜剧团体MontyPython。Python已有三十多年的发展史,其诞生之初并不起眼,直到近些年才成为热门编程语言。提示Python流行趋势:从TIOBE指数可以看出,Python从2010年后开始快速上升,在2021年登顶第一。1.1小结:Python编程程序是告诉计算机如何完成计算任务的指令序列程序的五大基本操作:输入、输出、运算、分支、循环Python是当前最流行的编程语言,TIOBE排名第一Python语法简洁优雅,适合初学者入门Python是解释型语言,可跨平台运行Python由GuidovanRossum于1991年创建Python名称来源于英国喜剧团体MontyPython1.2编写一个Python程序学习安装Python、使用IDLE环境、编写第一个程序1.2.1安装Python37第1章绪论·1.2编写Python程序安装步骤1访问官网访问官方网站2下载安装文件点击Downloads进入下载界面3选择版本选择适合操作系统的Python版本4运行安装双击安装文件,按提示安装5验证安装打开IDLE检查是否安装成功注意本书中的代码需要使用Python3.8或以上版本。注意:多数代码无法在Python2中运行!Python官方下载页面39第1章绪论·1.2编写Python程序官方网站:点击”Downloads”进入下载界面显示最新版本的Python安装文件提供适用于不同操作系统的版本Windows、macOS、Linux均有支持Mu编程环境推荐初学者使用的Python编程环境官方网站:https://codewith.mu设计理念:编程环境简洁降低初学者的学习难度提供适合不同操作系统的版本提示本书中的所有代码均可在Python官方编程环境IDLE中运行,无需特殊编程环境支持。1.2.2运行Python—IDLE41第1章绪论·1.2编写Python程序什么是IDLE?IDLE是”IntegratedDevelopmentandLearningEnvironment”的简写,即整合开发与学习环境。它是集成了Python解释器的编程环境。打开IDLE的方式方式一:开始菜单在开始菜单中找到IDLE程序或直接搜索”IDLE”点击打开即可方式二:Python应用列表打开开始菜单找到Python应用列表选择IDLE打开IDLE界面介绍43第1章绪论·1.2编写Python程序IDLEShell界面打开IDLE后显示代码解释器界面(Shell),程序开发者可以在这里与Python解释器进行实时交互:输入代码,即可显示结果。在三个大于号(>>>)处输入代码,按下Enter键即可执行。IDLEShell>>>1+12>>>print("HelloWorld!")HelloWorld!Python3.10.5表示当前运行的Python版本号,只要版本号是3.8以上即可。配置IDLE45第1章绪论·1.2编写Python程序调整字体设置获得更好的代码阅读体验设置项推荐值说明FontFaceConsolas适合显示代码的等宽字体Size22根据屏幕大小调整设置路径Options→ConfigureIDLE在设置界面进行调整推荐编程字体Consolas-Windows系统自带的优秀等宽字体CourierNew-经典的等宽字体根据个人喜好和屏幕大小选择合适的字体和字号1.2.3尝试运行Python代码47第1章绪论·1.2编写Python程序任务1.2请在Shell中尝试输入下面的代码,并分析运行结果:2*32*31-210/510/0运行结果>>>2*36>>>2*36>>>1-2-1>>>10/52.0>>>10/0Traceback(mostrecentcalllast):File"<pyshell#1>",line1,in<module>
10/0ZeroDivisionError:divisionbyzero代码运行结果分析49第1章绪论·1.2编写Python程序表达式结果分析2*36*号表示乘法,前后空格不影响运行2*36与2*3结果相同,空格不影响1-2-1-号表示减法,结果为负数10/52.0/表示除号,结果总是float类型10/0错误除数不能为0,触发ZeroDivisionError注意计算机只会按照程序设计语言的规则执行代码。不符合规则的代码会产生错误(Error)。提示重要发现:10/5的结果是2.0而不是2!在Python中,除法运算的结果总是float类型,无论数学计算结果是否为整数。1.2.4第一个完整的Python程序51第1章绪论·1.2编写Python程序从Shell到程序文件为什么要创建程序文件?IDLEShell主要用于交互功能,编写一个完整的程序需要创建程序文件。点击File菜单中的NewFile选项创建程序文件在新的程序编写窗口中输入代码点击Run菜单中的RunModule选项运行程序在弹出的对话框中选择保存位置并命名程序保存完成后,在Shell中查看程序运行结果运行HelloWorld程序53第1章绪论·1.2编写Python程序第一步:创建新文件并输入代码程序文件print("HelloWorld!")第二步:运行程序Shell输出>>>HelloWorld!第三步:保存程序文件(.py后缀)提示Python程序文件的扩展名是.py。建议为程序取一个有意义的名字,方便日后查找。输出多行信息55第1章绪论·1.2编写Python程序任务1.3扩充代码,输出如下两行信息:HelloWorld!Iloveprogramming!错误尝试:错误代码print("HelloWorld!Iloveprogramming!")Python无法理解这种表达方式正确方法:正确代码print("HelloWorld!")print("Iloveprogramming!")调用两次print()函数输出两行信息1.2.5人机互动57第1章绪论·1.2编写Python程序什么是人机互动?到目前为止,我们的程序只能输出信息,无法实现人机互动。下面来设计一个能够根据输入数据进行输出的程序,即能够实现人机互动的程序。input()函数input()函数的功能与print()函数不同可以读取用户输入的数据将数据保存到变量中在程序中使用输入的数据print()vsinput()print():输出数据到屏幕input():从键盘读取数据print():程序→用户input():用户→程序人机互动程序示例59第1章绪论·1.2编写Python程序任务1.4请设计一个程序,询问用户的姓名,当用户输入姓名后,程序对用户说Hello。例如,用户输入Jim,程序输出HelloJim。代码1.6print("Whatisyourname?")name=input()print("Hello",name)运行结果Whatisyourname?JimHelloJim程序运行过程详解61第1章绪论·1.2编写Python程序1程序输出”Whatisyourname?”2程序暂停,input()函数等待用户输入3光标闪烁,表示正在等待输入数据4用户输入Jim,按下Enter键5程序继续运行,输出HelloJim6程序运行结束注意程序只会按照顺序执行一遍,运行结束后不会自动重启!当输入第二个名字时,Shell将其视为代码,导致报错。错误分析63第1章绪论·1.2编写Python程序Shell>>>Whatisyourname?JimHelloJim>>>TomTraceback(mostrecentcalllast):File"<pyshell#0>",line1,in<module>TomNameError:name'Tom'isnotdefined错误原因分析程序运行结束后,Shell恢复到交互模式。此时输入Tom,Shell将其视为Python代码执行。由于Tom不是定义过的变量名,所以出现NameError。本章关键术语65第1章绪论术语解释计算机科学研究计算机及其周围各种现象与规律的科学算法解决问题的步骤或方法程序告诉计算机如何完成计算任务的指令序列Python解释器将Python代码逐行翻译为机器语言的程序PythonIDLEPython的集成开发与学习环境PythonShellPython的交互式命令行界面本章小结Python语言的特点:简洁优雅、易于学习、跨平台、应用广泛Python的安装与运行:从下载,使用IDLE编程环境IDLE编程环境:Shell界面(交互)与文件程序编写界面基本信息输出:使用print()函数输出数据人机互动程序:使用input()函数读取用户输入程序按顺序执行一遍,运行结束后不会自动重启除法运算结果总是float类型课后习题68第1章绪论1相比于C语言和Java,Python有哪些特点?2编译型与解释型程序设计语言的区别是什么?3设计一个程序,输出信息:I'maprogrammer!4设计一个程序,输出信息:我喜欢编程。5设计一个程序,询问用户最喜欢的动物是什么,并读取用户输入,然后输出IloveXXX信息。实践练习1:输出自我介绍70第1章绪论·实践练习任务实践编写一个Python程序,输出以下自我介绍信息:大家好!我叫XXX。我是一名师范生。我喜欢编程!参考代码:practice1.pyprint("大家好!")print("我叫小明。")print("我是一名师范生。")print("我喜欢编程!")实践练习2:简单的人机对话72第1章绪论·实践练习任务实践编写一个Python程序,实现以下对话:程序:你好!请问你叫什么名字?用户:输入名字程序:你好,XXX!欢迎学习Python编程!参考代码:practice2.pyprint("你好!请问你叫什么名字?")name=input()print("你好,"+name+"!")print("欢迎学习Python编程!")提示提示:这里使用了字符串拼接(+),将在第2章详细介绍。知识拓展:计算思维74第1章绪论·知识拓展什么是计算思维?计算思维(ComputationalThinking)是指运用计算机科学的概念进行问题求解、系统设计和人类行为理解等涵盖计算机科学广度的一系列思维活动。计算思维的核心分解:将复杂问题分解为小问题模式识别:发现问题的规律抽象:忽略细节,关注核心算法设计:设计解决步骤编程与计算思维编程是培养计算思维的重要手段计算思维不等同于编程21世纪每个人的必备技能师范生作为未来教师必须掌握第1课时回顾:程序与Python76第1章绪论·课时回顾程序是告诉计算机如何完成计算任务的指令序列程序的五大基本操作:输入、输出、运算、分支、循环Python是当前最流行的编程语言(TIOBE排名第一)Python语法简洁,适合初学者入门Python是解释型语言,可跨平台运行Python由GuidovanRossum于1991年创建Python名称来源于英国喜剧团体MontyPython第2课时回顾:安装与运行78第1章绪论·课时回顾从下载Python安装文件推荐使用Python3.8或以上版本IDLE是Python的集成开发与学习环境IDLEShell提供交互式编程体验可以配置字体和字号获得更好的阅读体验推荐编程字体:Consolas、CourierNewMu是另一个适合初学者的编程环境第3课时回顾:第一个程序80第1章绪论·课时回顾print()函数用于输出信息到屏幕创建程序文件:File→NewFile运行程序:Run→RunModulePython程序文件扩展名为.py输出多行信息需要多次调用print()函数空格不影响代码运行(如2*3和2*3结果相同)除法运算/的结果总是float类型第4课时回顾:人机互动82第1章绪论·课时回顾input()函数用于读取用户输入的数据input()函数的返回值是字符串类型print()和input()配合实现人机互动程序按顺序执行一遍,运行结束后不会自动重启在Shell中输入未定义的变量名会触发NameErrorprint()函数可以输出多个值,用逗号分隔变量用于存储数据,将在第2章详细介绍深入理解:程序的本质84第1章绪论·深入理解数字表示计算机只能处理数字所有信息最终都转换为数字文字→编码(如ASCII、Unicode)图像→像素值矩阵声音→采样数据序列程序→二进制指令从问题到程序1.分析问题2.设计算法3.编写代码4.调试运行5.测试验证6.维护优化Python生态系统86第1章绪论·知识拓展人工智能TensorFlow,PyTorch,Keras数据分析NumPy,Pandas,MatplotlibWeb开发Django,Flask,FastAPI自动化脚本Selenium,PyAutoGUI科学计算SciPy,SymPy,AstroPy教育工具turtle,jupyter,Mu编程语言对比88第1章绪论·知识拓展语言类型难度主要应用学习建议Python解释型低AI、数据、Web、教育初学者首选C编译型中高系统、嵌入式、驱动理解底层原理Java混合型中企业应用、Android面向对象入门JavaScript解释型中前端、Node.jsWeb开发必学C++编译型高游戏、系统、高性能进阶学习提示作为师范生,建议先学Python入门,再根据需要学习其他语言。Python的简洁性让你能专注于编程思维而非语法细节。常见错误与解决方法90第1章绪论·实用指南错误类型错误信息原因解决方法除零错误ZeroDivisionError除数为0检查除数是否为0名称错误NameError使用未定义的变量检查变量是否已定义语法错误SyntaxError代码不符合语法规则检查标点符号和缩进类型错误TypeError不兼容的类型操作检查数据类型提示遇到错误不要慌!仔细阅读错误信息,通常能找到问题所在。Python的错误信息非常详细,能帮助你定位问题。print()函数详解92第1章绪论·知识拓展print()函数的基本用法print()函数是Python中最常用的输出函数,可以将数据显示到屏幕上。print_examples.py#输出字符串print("HelloWorld!")#输出空行print()#输出多个值(用逗号分隔)print("Hello","World","Python")#输出变量name="Tom"print(name)输出结果:HelloWorld!/(空行)/HelloWorldPython/Tominput()函数详解94第1章绪论·知识拓展input()函数的基本用法input()函数用于从键盘读取用户输入的数据,返回值始终是字符串类型。input_examples.py#基本用法name=input()print("Hello",name)#带提示信息age=input("请输入年龄:")print("你的年龄是",age)#注意:input()返回的是字符串num=input("请输入数字:")print(num*3)#字符串重复,不是数学运算更多实践练习96第1章绪论·实践练习1输出个人信息输出姓名、学校、专业三行信息2简单计算器在Shell中计算100+200的结果3问候程序输入名字,输出个性化问候语4自我介绍对话程序问3个问题,输出总结信息5数学运算探索在Shell中尝试+、-、*、/运算Python版本发展史98第1章绪论·知识拓展版本发布年份重要特性Python0.91991最初的Python版本Python1.01994函数式编程工具Python2.02000列表推导、垃圾回收Python2.42004装饰器、生成器表达式Python3.02008不兼容升级,print()函数化Python3.62016f-strings格式化字符串Python3.82019海象运算符:=Python3.102021结构化模式匹配注意Python2已于2020年停止维护。本书使用Python3.8+版本,代码无法在Python2中运行!不同操作系统的安装方法100第1章绪论·实用指南Windows1.访问2.下载.exe安装包3.勾选AddtoPATH4.点击InstallNow5.验证:打开IDLEmacOS1.访问2.下载.pkg安装包3.双击安装4.或使用brew:brewinstallpython5.验证:打开IDLELinux1.使用包管理器:Ubuntu:aptinstallpython3CentOS:yuminstallpython32.或从源码编译3.通常已预装4.验证:python3--versionIDLE的常用功能102第1章绪论·实用指南功能操作方式说明新建文件File→NewFile(Ctrl+N)创建新的程序文件打开文件File→Open(Ctrl+O)打开已有程序文件保存文件File→Save(Ctrl+S)保存当前程序文件运行程序Run→RunModule(F5)运行当前程序文件配置IDLEOptions→ConfigureIDLE设置字体、颜色等查找替换Edit→Find(Ctrl+F)在代码中查找和替换缩进控制Tab/Shift+Tab增加/减少缩进代码注释104第1章绪论·知识拓展什么是注释?注释(Comment)是以#号开头的信息,不会影响代码的执行,主要作用是帮助理解代码的含义。comments.py#这是一个单行注释print("HelloWorld!")#行尾注释#下面计算正方形周长side=3
#边长perimeter=side*4
#周长=边长*4print(perimeter)#输出结果提示良好的注释习惯是编程的基本素养。注释应该解释”为什么”而不是”做了什么”。Python的命名趣事106第1章绪论·趣味知识MontyPythonPython名称来源英国喜剧团体MontyPythonGuidovanRossum的喜爱与蟒蛇无关体现了Python的幽默文化Python之禅importthisBeautifulisbetterthanuglySimpleisbetterthancomplexReadabilitycounts体现了Python的设计哲学>>>importthis交互模式vs脚本模式108第1章绪论·知识拓展特性交互模式(Shell)脚本模式(文件)用途测试和实验编写完整程序执行方式逐行输入执行一次性执行全部代码保存不保存代码保存为.py文件适用场景快速验证想法开发实际程序打开方式直接打开IDLEFile→NewFile运行方式输入代码+EnterRun→RunModule(F5)提示建议:先用Shell测试小段代码,验证正确后写入程序文件。这是高效的Python开发方式。Shell中的数学运算110第1章绪论·知识拓展Shell运算>>>2+35>>>10-46>>>3*412>>>15/35.0>>>2**101024>>>17%52>>>17//53运算符含义示例结果+加法2+35-减法10-46*乘法3*412/除法15/35.0**幂运算2**101024%取余17%52//取整除17//53理解Python错误信息112第1章绪论·实用指南错误信息>>>10/0Traceback(mostrecentcalllast):File"<pyshell#1>",line1,in<module>
10/0ZeroDivisionError:divisionbyzero如何阅读错误信息Traceback:错误回溯,显示错误发生的位置File:出错的文件名和行号line1:出错的代码行号ZeroDivisionError:错误类型(除零错误)divisionbyzero:错误描述(除以零)课堂讨论话题114第1章绪论·课堂活动讨论话题1.为什么说Python适合作为编程入门语言?2.编译型语言和解释型语言各有什么优缺点?3.在你的专业领域,Python可能有哪些应用?4.如果你是老师,如何向中小学生介绍编程?5.计算思维与传统数学思维有什么异同?6.你认为学习编程对师范生有什么意义?Python之父:GuidovanRossum116第1章绪论·趣味知识人物简介GuidovanRossum,荷兰程序员,1956年出生。1989年圣诞节期间,为了打发时间,开始编写Python语言。他是Python语言的创造者和长期的”仁慈独裁者”(BDFL)。贡献创造了Python语言设计Python的简洁语法领导Python社区30余年2018年退居幕后2020年加入微软设计理念简洁优雅可读性优先只有一种正确做法实用胜于纯粹面向初学者友好TIOBE指数详解118第1章绪论·知识拓展什么是TIOBE指数?TIOBE指数是编程语言流行度的重要参考指标,基于搜索引擎查询结果统计,每月更新一次。Python从2018年的3.9%上升到2022年的13.4%,增长迅猛IDLE的颜色提示120第1章绪论·实用指南颜色含义示例橙色Python关键字if,else,for,while,def绿色字符串"HelloWorld!"紫色内置函数print(),input(),int()灰色注释#这是一个注释黑色普通代码name=input()蓝色输出结果HelloWorld!提示通过颜色可以快速识别代码的组成部分,帮助发现语法错误。如果变量名显示为橙色,说明它是关键字,需要更换名称。程序详解:人机互动程序122第1章绪论·代码详解interactive.pyprint("Whatisyourname?")name=input()print("Hello",name)第1行print()函数输出提示信息”Whatisyourname?”第2行input()函数等待用户输入,将输入内容保存到变量name中第3行print()函数输出”Hello”和变量name的值,用空格分隔预告:变量124第1章绪论·下章预告什么是变量?在代码1.6中,name=input()使用了变量name来存储用户输入的数据。变量是编程中非常基础且重要的概念,将在第2章详细介绍。variables_preview.py#变量用于存储数据name=input()#将输入保存到变量nameage=18
#变量age存储整数18pi=3.14
#变量pi存储浮点数3.14#使用变量print(name)print(age)print(pi)第2章将深入学习变量、数据类型、运算符等核心概念→学习资源推荐126第1章绪论·学习资源官方资源Python官网:Python文档:Python教程:/3/tutorial/IDLE使用指南Python标准库文档其他资源Mu编辑器:codewith.muTIOBE指数:Python之禅:importthis菜鸟教程:/python3实验楼:本章知识结构图128第1章绪论·知识结构第1章绪论第1章绪论程序概念Python简介发展历程安装PythonIDLE环境第一个程序本章测试130第1章绪论·测试1.Python是一种什么类型的语言?A.编译型语言B.解释型语言C.汇编语言D.机器语言2.Python语言由谁创建?A.GuidovanRossumB.BillGatesC.LinusTorvaldsD.JamesGosling3.Python程序文件的扩展名是?A..pyB..pythonC..ptD..p4.以下哪个是Python的交互式编程环境?A.IDLEB.WordC.ExcelD.Photoshop本章测试(续)131第1章绪论·测试1.input()函数返回的数据类型是?A.整数B.浮点数C.字符串D.布尔值2.10/5在Python中的结果是?A.2B.2.0C.2.5D.错误3.程序运行结束后会怎样?A.自动重启B.保持运行C.自动结束,不会重启D.报错4.以下哪个是程序的五大基本操作之一?A.输入B.排序C.搜索D.加密第1章完下一章:数据与运算变量·数据类型·运算符·输入输出·格式化输出教学建议(教师参考)133第1章绪论·教学参考教学重点程序的基本概念和五大操作Python的安装与IDLE使用print()函数和input()函数第一个完整程序的编写流程人机互动程序的实现教学难点编译型与解释型语言的区别程序执行流程的理解input()返回值为字符串程序只执行一遍的概念错误信息的理解与分析教学策略建议135第1章绪论·教学参考1.从生活实例引入程序概念,如计算器、手机APP等2.先演示再操作:教师演示安装和运行过程,学生跟做3.对比教学法:Python与C/Java的HelloWorld对比4.任务驱动:每个知识点配以具体任务让学生完成5.鼓励探索:让学生在Shell中自由尝试各种运算6.错误教学:故意制造错误,让学生学习阅读错误信息7.分组讨论:讨论计算思维与编程的关系8.及时反馈:每课时结束时进行小结和测试学生常见问题137第1章绪论·教学参考问题原因解决方案安装后无法运行未勾选AddtoPATH重新安装或手动添加PATHIDLE找不到安装不完整重新安装Python中文标点报错使用了中文引号/括号切换英文输入法程序不输出未运行程序按F5运行输入后报错程序已结束重新运行程序除法结果不对结果是float类型理解/总是返回float编程思维入门139第1章绪论·思维训练从问题到程序编程的核心不是记忆语法,而是学会将问题分解为计算机可以执行的步骤。这种思维方式就是”编程思维”。步骤一:理解问题明确输入是什么明确输出是什么明确需要什么计算考虑边界情况步骤二:设计步骤确定计算顺序考虑需要的变量规划输入输出格式画出流程图问题分析示例:问候程序141第1章绪论·思维训练问题设计一个程序,询问用户姓名,输出个性化问候语。分析维度内容输入用户的姓名(字符串)输出个性化问候语(字符串)计算无复杂数学计算,字符串拼接步骤1输出提示信息步骤2读取用户输入步骤3输出问候语+姓名print("Whatisyourname?")name=input()print("Hello",name)Python在生活中的应用143第1章绪论·知识拓展数据处理Excel自动化、批量文件处理网络爬虫自动获取网页信息人工智能语音识别、图像分类自动化办公自动发邮件、生成报告游戏开发Pygame制作小游戏教育工具turtle绘图、教学演示Python与Scratch对比145第1章绪论·知识拓展特性ScratchPython编程方式图形化积木文本代码适合年龄8-12岁12岁以上学习难度非常低较低应用范围教育、游戏全领域语法要求无需要学习语法实际开发不适合广泛使用过渡关系编程启蒙正式编程提示对于中小学生,可以先学Scratch建立编程概念,再过渡到Python学习真正的编程。IDLE常用快捷键147第1章绪论·实用指南快捷键功能使用场景F5运行程序在程序文件中运行代码Ctrl+N新建文件创建新的程序文件Ctrl+S保存文件保存当前程序Ctrl+O打开文件打开已有程序Ctrl+F查找在代码中查找文本Ctrl+Z撤销撤销上一步操作Ctrl+C复制复制选中文本Ctrl+V粘贴粘贴文本Tab缩进增加缩进Shift+Tab取消缩进减少缩进良好编程习惯149第1章绪论·编程素养1.使用英文标点符号,避免中文标点导致的语法错误2.为程序文件取有意义的名字3.养成及时保存的习惯(Ctrl+S)4.写注释解释代码的含义5.代码要有适当的缩进6.遇到错误先仔细阅读错误信息7.不要害怕犯错,错误是学习的机会8.多动手实践,光看不练学不会编程综合实践:自我介绍程序151第1章绪论·综合实践任务综合任务编写一个完整的自我介绍程序:1.程序问候用户2.询问用户姓名3.询问用户年龄4.询问用户爱好5.输出一段完整的自我介绍intro.pyprint("欢迎使用自我介绍程序!")print("请回答以下问题:")print("你叫什么名字?")name=input()print("你今年几岁?")age=input()print("你的爱好是什么?")hobby=input()print("---")print("你好,",name)print("你今年",age,"岁")print("你的爱好是",hobby)编程范式简介153第1章绪论·知识拓展什么是编程范式?编程范式是编程的基本风格或方式,不同的范式有不同的思考问题和组织代码的方式。命令式编程告诉计算机”怎么做”通过语句改变程序状态Python支持此范式C语言也属于此范式最常用的编程方式函数式编程将计算视为函数运算避免状态改变Python部分支持强调不可变性适合数据处理面向对象编程将程序组织为对象对象包含数据和方法Python完全支持适合大型项目本书不深入介绍计算机如何执行程序(简化)155第1章绪论·知识拓展编写源代码→解释/编译→机器指令→CPU执行→输出结果执行过程说明1.程序员使用Python语言编写源代码2.Python解释器将源代码逐行翻译为机器指令3.机器指令是CPU能理解的二进制代码4.CPU执行机器指令,进行运算5.运算结果输出到屏幕或其他设备内存的概念157第1章绪论·知识拓展什么是内存?内存是计算机中用于临时存储数据的部件。程序运行时,数据和指令都存储在内存中。每个数据在内存中都有一个唯一的地址。内存的特点临时存储(断电丢失)读写速度快容量相对较小按地址访问数据程序运行时使用与硬盘的区别硬盘:永久存储内存:临时存储硬盘:容量大速度慢内存:容量小速度快程序从硬盘加载到内存运行算法的概念159第1章绪论·知识拓展什么是算法?算法是解决特定问题的一系列步骤。一个好的算法应该:正确、高效、可读。算法示例:泡茶1.烧开水2.准备茶杯和茶叶3.将茶叶放入茶杯4.倒入开水5.等待3分钟6.喝茶算法示例:三角形面积1.读取底a和高b2.计算面积=a*b/23.输出面积这就是一个简单的算法程序是算法的实现调试(Debug)简介161第1章绪论·知识拓展什么是调试?调试(Debug)是发现和修复程序中错误的过程。Bug原意为”虫子”,据说早期计算机故障是因为飞蛾卡在继电器中。语法错误代码不符合语法规则IDLE会提示SyntaxError通常为标点错误最容易发现和修复运行时错误程序运行时出错如ZeroDivisionError如NameError需要阅读错误信息逻辑错误程序能运行但结果不对最难发现的错误需要测试验证需要仔细分析逻辑Python社区与生态163第1章绪论·知识拓展Python社区全球数百万开发者PyPI:超过40万个第三方包活跃的开源贡献丰富的学习资源友好的新手环境每年举办PyCon大会Python之禅BeautifulisbetterthanuglySimpleisbetterthancomplexReadabilitycountsThereshouldbeonewayPracticalitybeatspurityNowisbetterthanneverPython与职业发展165第1章绪论·职业展望信息技术教师中小学Python编程教学数据分析师使用Python处理和分析数据AI工程师使用Python开发AI应用Web开发者使用Django/Flask开发网站自动化工程师使用Python编写自动化脚本科研人员使用Python进行科学研究作为师范生,掌握Python将为你的教育事业打开更多可能Python学习路径167第1章绪论·学习规划1入门基础语法、变量、运算符、条件、循环2进阶函数、数据结构、文件操作、异常处理3应用turtle绘图、数据处理、简单项目4拓展面向对象、模块、第三方库5专业Web开发、数据分析、人工智能本书涵盖入门到应用阶段,为你打下坚实的Python基础实践:Shell中的数字探索169第1章绪论·实践练习任务探索任务在IDLEShell中尝试以下运算,记录并分析结果:1.7+32.7-33.7*34.7/35.2**86.100%77.100//7Shell>>>7+310>>>7-34>>>7*321>>>7/32.3333333333333335>>>2**8256>>>100%72>>>100//714实践:Shell中的字符串探索171第1章绪论·实践练习任务探索任务在IDLEShell中尝试以下操作,分析结果:1.print("Hello")2.print('Python')3."Hello"+"World"4."Hi"*35.print("A","B","C")Shell>>>print("Hello")Hello>>>print('Python')Python>>>"Hello"+"World"'HelloWorld'>>>"Hi"*3'HiHiHi'>>>print("A","B","C")ABC环境变量与PATH173第1章绪论·实用指南什么是PATH?PATH是操作系统的环境变量,告诉系统在哪里找到可执行程序。安装Python时勾选”AddPythontoPATH”可以让系统在任何位置都能找到Python。如何验证安装成功方法一:打开IDLE,看到Python版本号即成功方法二:打开命令行(CMD/Terminal),输入python--version方法三:在命令行输入python,进入交互模式如果提示”python不是内部命令”,说明PATH未配置正确解决方法:重新安装并勾选AddtoPATH,或手动配置环境变量print()函数的更多用法175第1章绪论·知识拓展print_advanced.py#1.输出空行print()#2.输出多个值(默认用空格分隔)print("姓名:","张三","年龄:",18)#3.设置分隔符sepprint("2022","07","01",sep="-")#4.设置结尾符end(默认换行\n)print("Hello",end="")print("World")#输出:HelloWorld#5.输出特殊字符print("第一行\n第二行")#\n表示换行print("带\"引号\"的文本")#\"表示双引号input()函数的更多用法177第1章绪论·知识拓展input_advanced.py#1.基本用法name=input()print("Hello",name)#2.带提示信息(不推荐)name=input("请输入姓名:")print("Hello",name)#3.输入数字(需要类型转换,第2章详解)age=input()print("明年你",int(age)+1,"岁")#4.输入多个数据(每行一个)a=input()b=input()print(a,b)#重要:input()总是返回字符串!初学者常见错误179第1章绪论·实用指南错误错误代码正确代码原因中文标点print(”Hello”)print("Hello")必须用英文标点缺少引号print(Hello)print("Hello")字符串需要引号缺少括号print"Hello"print("Hello")Python3需要括号大小写错误Print("Hello")print("Hello")区分大小写缩进错误print("Hello")print("Hello")不能随意缩进注意最常见的问题:使用了中文输入法的标点符号!编程时请切换到英文输入法。交互式编程技巧181第1章绪论·实用技巧1.在Shell中输入表达式可以直接看到结果,无需print()2.使用上下箭头键可以浏览之前输入过的命令3.使用Tab键可以自动补全变量名和函数名4.使用Ctrl+C可以中断正在运行的程序5.在Shell中,变量名直接输出等价于print(变量名)6.Shell中输入的代码不会被保存,重要代码请写入文件7.可以同时打开多个程序文件窗口8.修改程序后需要重新运行(F5)才能看到新结果Python文件类型183第1章绪论·知识拓展扩展名类型说明.pyPython源文件最常见的Python程序文件.pyc编译后的字节码Python自动生成,加速加载.pyw无控制台Python文件运行时不显示控制台窗口.pydPython动态模块Windows上的扩展模块.ipynbJupyter笔记本交互式笔记本文件提示本书中编写的程序文件都是.py文件,这是最标准的Python程序文件格式。课程期望与要求185第1章绪论·课程说明课程要求每课时携带笔记本电脑课前安装好Python环境课堂上多动手实践课后完成习题和练习遇到问题及时提问培养独立解决问题的能力学习建议多写代码,少看视频先思考再编码理解概念而非记忆语法善用Shell测试想法学会阅读错误信息享受编程的乐趣综合复习187第1章绪论·综合复习1.程序的五大基本操作包括以下哪些?A.输入、输出、运算、分支、循环B.加减乘除和取余C.打开、编辑、保存、运行、调试D.变量、函数、类、对象、模块2.在Python中,10/0会产生什么?A.结果为0B.结果为InfinityC.ZeroDivisionErrorD.程序崩溃3.以下哪个不是Python的优点?A.语法简洁B.跨平台C.运行速度最快D.丰富的库4.input()函数的作用是什么?A.输出数据B.读取用户输入C.计算数学表达式D.定义变量综合复习(续)188第1章绪论·综合复习1.Python程序文件保存后,如何运行?A.按Ctrl+SB.按F5C.按Ctrl+RD.按Enter2.在IDLE中,Python关键字显示为什么颜色?A.黑色B.橙色C.绿色D.蓝色3.以下哪个是正确的print()用法?A.printHelloB.print(Hello)C.print("Hello")D.Print("Hello")4.程序运行结束后会怎样?A.自动重启B.保持运行状态C.自动结束不重启D.进入暂停状态感谢学习第1章绪论Lifeisshort,youneedPython.——BruceEckel面向师范生的Python编程导论第2章数据与运算变量·数据类型·运算符·输入输出面向师范生的Python编程导论本章概述2第2章数据与运算本章将学习Python编程中最核心的基础概念2.1变量变量概念、赋值、命名规则2.2数据类型int/float/str/bool、运算符、类型转换2.3数据的输入与输出input()、print()、f-strings2.4运算符进阶**幂运算、//取整除、%取余数本章学习目标4第2章数据与运算知识目标理解变量的概念与本质掌握变量赋值与命名规则掌握四种基本数据类型理解常见运算符的功能掌握类型转换的方法能力目标熟练使用input()读取数据熟练使用print()输出数据掌握f-strings格式化输出能够编写含运算的程序能够解决实际计算问题本章课时安排(4课时)6第2章数据与运算课时教学内容重点/难点活动设计第1课时变量与赋值、命名规则变量的概念与命名概念讲解+Shell练习第2课时数据类型与运算符类型转换编程实践+任务驱动第3课时input()与print()函数f-strings格式化项目实践第4课时运算符进阶与综合应用//与%运算符综合练习+测试提示建议每课时预留15分钟进行编程实践,让学生在动手编写代码中掌握概念。2.1变量理解变量的概念,掌握变量赋值与命名规则2.1.1变量的概念9第2章数据与运算·2.1变量什么是变量?在Python编程中,变量(variable)是一个非常基础且重要的概念。变量是一种方便理解和记忆的标识符,对应存储某个数据的内存地址。变量可以简单理解为一个名称,程序通过它可以存取、修改内存中的数据。变量的作用存储数据到内存中通过名称访问数据可以随时修改数据方便程序复用数据生活中的类比变量=贴有标签的盒子变量名=盒子的标签变量值=盒子里的物品赋值=往盒子里放物品变量的基本操作11第2章数据与运算·2.1变量Shell>>>n=100>>>n100>>>print(n)100>>>id(n)2446972947792n=100定义变量n,赋值为100输入n即可查看变量值print(n)也可输出值id(n)函数输出变量的内存地址每台计算机结果不同帮助理解变量本质改变变量的值13第2章数据与运算·2.1变量Shell>>>n=100>>>id(n)2446972947792>>>n=99>>>n99>>>id(n)2446972947760变量的本质顾名思义,变量的值是可以变化的。为变量重新赋值即可改变变量的值,本质上是其指向的内存地址发生改变。n=99后,n指向了一个新的内存地址。n=100地址A→重新赋值n=99→n=99地址B2.1.2变量赋值15第2章数据与运算·2.1变量赋值(Assignment)为变量设置值的过程叫作赋值,n=99称为赋值语句,等于号(=)也叫作赋值运算符。赋值语句的本质:将等于号右边的值赋予左边的变量。赋值语句的组成变量名(左)=表达式(右)提示表达式(expression)是可以被求值的代码,即运算后得到一个值的算式。最简单的表达式就是一个值,如100。赋值语句案例17第2章数据与运算·2.1变量代码2.1#代码2.1n=100
#100是最简单的表达式a=2+1
#表达式2+1的值是3,a=3b=2*3
#表达式2*3的值是6,b=6c=a+b#a+b的值是9,c=9赋值语句右边表达式计算结果变量值n=100100100n=100a=2+12+13a=3b=2*32*36b=6c=a+ba+b3+6=9c=9表达式的概念19第2章数据与运算·2.1变量什么是表达式?表达式(expression)是可以被求值的代码,简而言之就是运算后得到一个值的算式。简单表达式1003.14'Hello'True运算表达式2+12*3a+bside*4函数表达式int('10')float('3.14')str(100)input()2.1.3变量的命名21第2章数据与运算·2.1变量命名规则Python的变量名必须由英文字母或下画线开头,并且只能由英文字母、数字、下画线组成。合法的变量名a1_abcx_yageAgeFromfalse不合法的变量名1a-不能以数字开头姓名-不能用中文#a1-不能以#开头-不能有字符.from-是关键字Python3关键字列表23第2章数据与运算·2.1变量变量名不能是Python的关键字(保留字),共35个关键字列表FalseawaitelseimportNonebreakexceptinTrueclassfinallyisandcontinueforlambdaasdeffromnonlocalassertdelglobalnotasyncelififorpassraisereturntrywhilewithyield提示在IDLE中,关键字会显示为橙色。如果变量名显示为橙色,需要更换名称。可用keyword.kwlist查看所有关键字。任务2.1:变量名合法性判断25第2章数据与运算·2.1变量任务2.1下列变量名中,哪些是不合法的,为什么?a1,1a,_abc,x_y,姓名,#a1,,false,From,from,age,Age变量名是否合法原因a1合法1a不合法不能以数字开头_abc合法x_y合法姓名不合法不能用中文#a1不合法不能以#开头不合法不能有字符.false合法首字母小写,与False不同区分大小写27第2章数据与运算·2.1变量大小写敏感Python变量命名区分大小写。变量n和变量N是两个完全不同的变量,因为一个是小写的n,一个是大写的N。Shell>>>n=100>>>N=200>>>print(n)100>>>print(N)200>>>n==NFalse注意age和Age是两个不同的变量!在编程中,同一个字母的大小写被认为是完全不同的字符。变量命名的可读性29第2章数据与运算·2.1变量可读性很重要除命名规则外,还要注意变量名称的可读性,尽可能为变量取一个容易理解的名字。不好的命名a=3.14b=100x1='Tom's=side*4难以理解变量含义好的命名pi=3.14score=100name='Tom'perimeter=side*4一目了然,方便阅读查看所有关键字31第2章数据与运算·2.1变量代码2.2#代码2.2import
keywordprint(keyword.kwlist)运行结果['False','None','True','and','as','assert','async','await','break','class','continue','def','del','elif','else','except','finally','for','from','global','if','import','in','is','lambda','nonlocal','not','or','pass','raise','return','try','while','with','yield']提示如果实在记不住关键字,可以在Shell中运行这行代码查看所有关键字。2.1小结:变量变量是对应内存地址的标识符,用于存储和访问数据赋值语句:变量名=表达式变量名必须由字母或下画线开头,只能包含字母、数字、下画线变量名不能是Python关键字(35个保留字)Python变量名区分大小写(age和Age不同)变量命名应注重可读性,取有意义的名字id()函数可以查看变量的内存地址改变变量值本质是改变了指向的内存地址2.2数据类型掌握int/float/str/bool四种基本类型、常见运算符与类型转换2.2.1基本数据类型35第2章数据与运算·2.2数据类型Python中最常用的四种数据类型i整型整数,如100n=100f浮点型小数,如3.14pi=3.14s字符串型引号内的字符name='Tom'b布尔型True或Falsee=Truetype()函数37第2章数据与运算·2.2数据类型查看变量类型利用Python的type()函数可以查看变量的类型。在Shell中输入type(n),可以输出n的类型。Shell>>>n=100>>>type(n)<class
'int'>>>>pi=3.14>>>type(pi)<class
'float'>>>>name="Tom">>>type(name)<class
'str'>提示class可以理解为类型,int表示整数(integer的缩写),float表示浮点数,str表示字符串(string的缩写)。整型int39第2章数据与运算·2.2数据类型整型(int)整型就是整数类型,包括正整数、负整数和零。在Python中,整数的大小没有限制。Shell>>>n=100>>>type(n)<class
'int'>>>>a=-5>>>type(a)<class
'int'>>>>b=0>>>type(b)<class
'int'>整型的特点int类型可以参与加(+)、减(-)、乘(*)、除(/)等数学运算。注意:除法运算的结果总是float类型。浮点型float41第2章数据与运算·2.2数据类型浮点型(float)浮点数表示带有小数点的数,英文全称是floatingpointnumber。计算机用科学记数法表示小数,当改变指数时,小数点会浮动。在Python中有小数点的数就是float类型。代码2.3#代码2.3pi=3.14print(type(pi))#<class'float'>n=100.0print(type(n))#<class'float'>注意注意:100.0也是float类型!只要包含小数点,就是浮点数。即使数学上100.0等于100,但类型不同。字符串型str
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 赣州市面向大学生乡村医生专项计划招聘笔试真题2025
- 玉溪市消防救援局招聘政府专职消防队员笔试真题2025
- 《社群营销与运营》试卷及答案 共4套
- 2026 年暴雨天气农村低洼地带安全防范
- 2026 年高中秋季开学第一课实验室安全操作规范教育班会
- 2026年中西医结合科慢性病中西医联合护理
- 某水泥厂员工考勤准则
- 2026学年人教PEP版三年级英语下册基础默写卷
- 冶金企业节能制度
- 【人教54】八上数学期末卷29【8上全册】
- 过程安全衡量指标-领先和滞后CCPS
- 2025年初中道德与法治教师招聘考试测试卷及参考答案
- 电梯维保单位考核评价表
- 毕业设计(论文)-茶叶揉捻机设计
- 2025年浙江省中考数学真题含答案
- 高中化学竞赛2021-2022第35届化学奥林匹克(初赛)模拟试题参考答案及评分标准
- DB21-T 1368-2005 岩土现场描述规程
- 房屋建筑和市政基础设施工程勘察文件编制深度规定(2020年版)
- DB61-T 142-2021造林技术规范
- 北师大版数学五年级下册分数乘除混合运算练习100题及答案
- 紧急订单处理流程(含流程图)
评论
0/150
提交评论