版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
01
计算机语言种类02
编程语言的选择03本节小结目
录C
O
N
T
E
N
T
S计算机语言的种类以及编程语言的选择计算机语言CHAPTER
1计算机语言简洁易读可扩展已经被广泛应用到各个应用领域计算机语言Web开发运维开发搜索引擎机器学习计算机语言游戏开发计算机语言P
y
th
o
n是理想的选择计算机语言Python语言概述计算机语言Python简介Python开发环境搭建Python规范计算机语言人计算机通信计算机语言计算机系统的最大特征是指令通过一种语言传达给机器计算机语言数字语法规则字符指令计算机语言机器语言汇编语言高级语言计算机语言机器语言是最低级的语言,是用二进制代码表示的计算机能直接识别和执行的一种机器指令的集合。它是计算机设计者通过计算机的硬件结构赋予计算机的操作功能机器语言计算机语言直接执行灵活速度快机器语言计算机语言机器A—机器语言机器B—机器语言语言程序无法共享计算机语言在计算机发展的早期阶段,程序员使用机器语言来编写程序,编出的程序全是由0和1构成的指令代码,可读性差,还容易出错。计算机语言发展到今天,除了计算机生产厂家的专业人员外,绝大多数的程序员已经不再去学习机器语言计算机语言电子计算机微处理器微控制器其他可编程器件的汇编语言符号语言计算机语言用助记符用地址符号或标号01机器指令的操作码02指令或操作数地址增强程序的可读性并降低了编程难度计算机语言汇编语言目标代码简短占用内存少执行速度快用汇编语言编写的程序转换成机器指令要由“汇编语言编译器”不能直接被机器识别计算机语言简单编译推广移植难计算机语言高级语言依赖于硬件体系助记符量大难记汇编语言高级语言简单易用将机器指令合成为单条指令简化程序指令去掉具体操作有关但与完成工作无关细节如使用堆栈、寄存器高级语言代码更多速度更慢计算机语言高级语言主要是相对于低级语言而言,它并不是特指某一种具体的语言,而是包括了很多种编程语言计算机语言解释类编译类需转换才能执行计算机语言解释类边翻译边执行效率较低无法生成可执行文件不能脱离解释器比较灵活,可动态调整计算机语言编译类高级语言可脱离其语言环境独立执行使用比较方便运行效率较高修改应用程序须先修改源代码需要重新编译生成新目标文件计算机语言编程语言的选择计算机程序设计课程在高校中是一门必修的基础课程,对于课程而言,关键要选择合适的编程语言计算机语言崭露头角计算机语言Python语言是一种解释型面向对象的计算机程序设计语言广泛用于计算机程序设计教学、系统管理编程、科学计算等适用于快速的应用程序开发Python已成为最受欢迎的程序设计语言之一在操作上方便、快捷,容易掌握,可提升编程效率,并增强学习信心计算机语言3功能强大2使用Python语言编写程序,不
需要考虑如何管理程序使用的
内存等细节。并且,Python有
很丰富的库,既有官方开发的,也有第三方开发的,很多现有
功能模块,只需要调用即可,
不需要重新发明“轮子”等应用领域非常广泛学习入门容易1Python语言在编写代码时不
需要建立main函数,书写和
掌握计算机算法都比较简单。而且Python语言没有大量的
语法知识,只要在理解的基
础上掌握部分环节即可,能
实现教学资源的合理配置Python语言可以应用到网
站后端开发、自动化运维、数据分析、游戏开发、自
动化测试、网络爬虫、智
能硬件开发等各个领域计算机语言CJavaVBRPythonPython编程语言是高级语言发展必然选择。从程序设计语言发展看,它一直在追求接近人类的自然语言Python提供接近人类理解的语法形式,优化高级语言表达形式,简化程序设计过程,提升程序设计效率计算机语言从计算思维培养角度来说,传统的C、Java和VB等语言过分强调语法,并不适合非计
算机专业的学生。从传统应用技能教育向计算思维培养转变过程中,教学内容变革是重中之重。对于程序设计课程,选择适合时代和技术发展的编程语言,是显著提高培养效果的前提和基础。从解决计算问题的角度,传统的C、Java和VB语言过分强调语法,而
Python语言作为“轻语法”程序设计语言,相比其他语言而言具有更高的教学价值介绍Python语言的概念、特点、应用以及版本Python简介CHAPTER
101什么是P
yt
h
o
n02P
yt
h
o
n语言的特点03P
yt
h
o
n语言的应用目
录C
O
N
T
E
N
T
S04
P
yt
h
o
n的版本P
y
th
o
n简介Python
是1989年由荷兰人Guido
van
Rossum发明的一种面向对象的解释型高级编程语言P
y
th
o
n简介1989年由Guido
vanRossum发明1991年2004年2019年第一个公开发行版发行使用率呈线性增长第3次获得TIOBE最佳年度语言称号P
y
th
o
n简介Python也叫“胶水语言”,能够把用其它语言制作的各种模块很轻松地连接在一起。常见的应用情形是,使用Python快速生成程序的原型,然后对其中有特别要求的部分,用更合适的语言改写,比如3
D游戏中的图形渲染模块,性能要求特别高,就可用
C/C++重写,而后封装为Python可调用的扩展类库P
y
t
h
o
nP
y
th
o
n简介优雅明确简单Python在设计语言时,开发者一般会拒绝花哨的语法,而选择明确地没有或很少有歧义的语法P
y
th
o
n简介开发程序简单开发速度快节省时间和精力P
y
th
o
n简介“人生苦短我用Python”P
y
th
o
n简介Python的缺点Python的优点高级编程语言发展速度很快P
y
th
o
n简介Python语言的优点开源、免费面向对象语言简单跨平台强大生态系统0102030405P
y
th
o
n简介语言简单注重如何解决问题,而不是编程语言本身的语法和结构语言简单可读性高丢掉分号及花括号仪式化的东西,使语法结构尽可能简洁,代码的可读性显著提高提高开发效率相较于C、C++、Java等编程语言,Python语言提高了开发者的开发效率降低复杂度Python语言所包含的代
码量是最少的,代码行数是其他语言的1/5到1/3PythonP
y
th
o
n简介开源、免费Python开源(开放源代码)免费软件代码开源解释器和模块开源无需支付商业用途免费P
y
th
o
n简介面向对象面向对象的程序设计,更接近人类的思维方式,是对现实世界中客观实体进行结构和行为模拟支持继承
重载运算符
派生及多继承Python在支持面向对象编程的同时,也支持面向过程的编程,也就是说,它不强制使用面向对象编程,这使得其编程更加灵活。在“面向过程”的编程中,程序是由过程或仅仅是可重用代码的
函数构建起来的。在“面向对象”的编程中,程
序是由数据和功能组合而成的对象构建起来的P
y
th
o
n简介跨平台FINDLinuxWindowsFreeBSDSolarisPocketPCSymbianAndroid平台Python由于Python是开源的,它已被移植到许多平台上。所有Python程序都无需修改就可在很多平台上运行Python解释器P
y
th
o
n简介强大的生态系统在实际应用中,Python语言的用户
群体,绝大多数并非专业的开发者,而是其他领域的爱好者。对于这一部分用户来说,他们学习Python语言
的目的不是去做专业的程序开发,而仅仅是使用现成的类库去解决实际工作中的问题。Python极其庞大的生
态,刚好能够满足这些用户的需求P
y
th
o
n简介强大的生态系统丰富的生态系统也给专业开发者带来了极大的便利。大量成熟的第三方库可以直接使用,专业开发者只需要使用很少的语法结构就可以编写出功能强大的代码,缩短了开发周期,提高了开发效率P
y
th
o
n简介第三方库Matplotlib数据可视化库NumPy数值计算功能库SciPy数学科学和工程计算功能库pandas数据分析高层次应用库Scrapy网络爬虫功能库BeautifulSoupHTML和XML的解析库DjangoWeb应用框架FlaskWeb应用微框架P
y
th
o
n简介Python语言的缺点速度慢存在多线程性能瓶颈代码不能加密Python2.x和Python3.x不兼容由于Python是解释型
语言,它的速度会比C、C++、Java稍慢。但硬件性能的提升可以弥补软件性能的不足Python中存在全局解
释器锁,它是一个互斥锁,只允许一个线程来控制Python解释器,单线程执行状态成为多线程代码中的性能瓶颈在发布Python程序时,就是发布源代码,而C语言不用发布源代码,所以无法反推C代码,但Python因为是解释
性的语言,需要发布在Python中Python2.x和Python3.x不兼容,这给Python开发人员带来了无数烦恼P
y
th
o
n简介Python语言的应用P
y
th
o
n简介数据科学在数据采集环节在数据清洗环节在数据处理分析环节在数据可视化环节数据科学在Python第三方库Scrapy支持下
可编写网络爬虫程序采集网页数据第三方库pandas提供了功能强大的类库可帮助清洗数据、排序数据,得到清晰明了的数据第三方库NumPy和SciPy提供了丰富的科学计算和数据分析
功能包括统计、优化、整合、线性代数模块、傅里叶变换、信号和图像图例、常微分方程求解、矩阵解析和概率分布等第三方库Matplotlib提供了丰富的数据可视化图表P
y
th
o
n简介人工智能scikit-learnKerasNLTK机器学习工具提供了简单高效的数据挖掘和数据分析功能自然语言工具包标记化、词形还原、词干化、解析、POS标注深度学习库高级神经网络API深度学习框架Tensorflow、Caffe,主体都用Python实现的,提供的原生接口也是面向PythonP
y
th
o
n简介网站开发010402050306PythonDjangoFlaskPyramidBottleTornadoweb2pyP
y
th
o
n简介网站开发一方面体现Python在网站开发的受欢迎程度,另一方面体现Python用作网站开发支撑的大规模用户并发访问P
y
th
o
n简介系统管理Python简单易用、语法优美,特别适合系统管理的应用场景。著名的开源云计算平台OpenStack就是使用
Python语言开发的。除此之外,
Python生态中还有Ansible、Salt等自动化部署工具,也是使用Python语言开发的。这么多使用广泛、功能强大的系统管理工具,都是使用
Python语言开发,也反映了Python语言非常适合系统管理的事实P
y
th
o
n简介网络爬虫自动提取定制模块抓取网页P
y
th
o
n简介Python的版本1994200020081.0版本2.0版本3.0版本P
y
th
o
n简介不兼容输入输出方式内置函数语法层面Python2.x和Python3.xPython2.xPython3.xprint语句结果是整数默认编码是ASCII两个函数是并存print()函数
结果是浮点数默认编码UTF-8将range()与xrange()函数整合为一个range()函数P
y
th
o
n简介Python2.x和Python3.xPython3.8.7建议学习Python3.x思想共通Python3.x大势所趋Python安装、交互式执行环境、运行代码、编写代码及第三方工具搭建Python开发环境CHAPTER
1目
录C
O
N
T
E
N
T
S01安装P
y
t
h
o
n02使用交互式执行环境03
运行代码文件04使用I
D
L
E编写代码05第三方开发工具搭建P
y
th
o
n开发环境本教程采用的操作系统是Windows
7或以上版本,使用的Python版本是3.8.7搭建P
y
th
o
n开发环境64位Windows操作系统1python-3.8.7-amd64.exe2“Add
python
3.8
to
PATH”https:///搭建P
y
th
o
n开发环境无需手动配置搭建P
y
th
o
n开发环境cmd命令输入python搭建P
y
th
o
n开发环境在Python命令提示符“>>>”后输入Python代码>>>
print("Hello
World")Hello
World>>>
1+23>>>
2*(3+4)14使用交互式执行环境搭建P
y
th
o
n开发环境hello.pyprint("Hello
World")搭建P
y
th
o
n开发环境CMD命令在命令提示符后输入语句运行结果如右侧运行此代码$
python
C:\hello.py搭建P
y
th
o
n开发环境自带环境IDLE用Python
Shell与Python交互Python
ShellPython装成功搭建P
y
th
o
n开发环境提示符输入代码IDLE(Python
3.8
64-bit)搭建P
y
th
o
n开发环境在Python命令提示符“>>>”后输入Python代码创建一个代码文件,选择“File->New
File”搭建P
y
th
o
n开发环境运行代码文件hello.py,选择“Run->Run
Module”使用IDLE快捷键搭建P
y
th
o
n开发环境快捷键F1功能说明打开Python帮助文档F5运行Python代码文件Ctrl+]缩进代码块Ctrl+[取消代码块缩进Ctrl+F6重新启动IDLE
ShellCtrl+Z撤销一步操作Ctrl+Shift+Z恢复上一次的撤销操作Ctrl+S保存文件Alt+P浏览历史命令(上一条)Alt+N浏览历史命令(下一条)Alt+/自动补全前面曾经出现过的单词,可以连续按该快捷键,在多个单词中循环选择Alt+3注释代码块Alt+4取消代码块注释Alt+g转到某一行搭建P
y
th
o
n开发环境第三方开发工具PyCharmEclipseJupyter
Notebook功能强大的编辑器具有跨平台性拥有一般集成式开发环境应该具备的功能跨平台自由集成式最初用Java开发可以将其作为其他计算机语言的开发工具Google
App
Engine1234123如使用Eclipse则需要安装插件PyDev4最初只支持扩展40多种编程语言目前已成为用Python做教学、计算、科研的一个非常重要工具123搭建P
y
th
o
n开发环境调试语法高亮项目管理代码跳转智能提示自动完成单元测试版本控制Python规范、在编写Python程序应遵循约定俗成的规范Python规范CHAPTER
1目
录C
O
N
T
E
N
T
S01注释规则02代码缩进P
y
th
o
n规范注释规则代码缩进PEP8编码规范约定俗成Python规范P
y
th
o
n规范添加注释代码维护代码阅读P
y
th
o
n规范010302单行注释多行注释中文注释P
y
th
o
n规范010302单行注释多行注释中文注释Python中使用“#”表示单行注释。单行注释可单独的一行放在被注释代码行上,或放在语句或表达式后P
y
th
o
n规范01pi
=
3.1402
r
=
203#使用面积公式求出圆的面积
04
area=pi*r*r05print(area)【例1-1】单行注释作为单独的一行放在被注释代码行之上P
y
th
o
n规范【例1-1】“#”后添加空格01pi
=
3.1402
r
=
203#使用面积公式求出圆的面积
04
area=pi*r*r05print(area)P
y
th
o
n规范length=3#矩形的长width=5#矩形的宽area=length*width#求出矩形面积print(area)【例1-2】单行注释放在语句或表达式之后P
y
th
o
n规范【例1-2】“#”前添两空格length=3#矩形的长width=5#矩形的宽area=length*width#求出矩形面积print(area)P
y
th
o
n规范010302单行注释多行注释中文注释Python中使用“#”表示单行注释。单行注释可单独的一行放在被注释代码行上,或放在语句或表达式后当注释内容过多,导致一行无法显示,就可使用多行注释。Python中使用三个单引号或三个双引号表示P
y
th
o
n规范【例1-3】使用三个单引号的多行注释'''文件名:area.py用途:用于求解矩形的面积创建日期:2021年7月1日创建人:XMU'''P
y
th
o
n规范【例1-4】使用三个双引号的多行注释"""文件名:area.py用途:用于求解矩形的面积创建日期:2021年7月1日创建人:XMU"""P
y
th
o
n规范010302单行注释多行注释中文注释Python中使用“#”表示单行注释。单行注释可单独的一行放在被注释代码行上,或放在语句或表达式后当注释内容过多,导致一行无法显示,就可使用多行注释。Python中使用三个单引号或三个双引号表示当注释内容过多,导致一行无法显示,就可使用多行注释。Python中使用三个单引号或三个双引号表示P
y
th
o
n规范【例1-5】在文件开始位置添加中文注释01
#-*-coding:utf-8-*-02
length=3#矩形的长width=5#矩形的宽area
=
length*width#求出矩形的面积05
print(area)P
y
th
o
n规范代码缩进PythonC和Java采用代码缩进和冒号来区分代码之间的层次采用大括号来分隔代码块Python优雅P
y
th
o
n规范缩进可以使用空格或者Tab键来实现当使用空格缩进时,建议使用4个空格为一个缩进量P
y
th
o
n规范【例1-6】Python的缩进语法length=3#矩形的长width=5#矩形的宽area
=
length*width
#矩形的面积04
if
area
>
10:05
print("大矩形")P
y
th
o
n规范IDLEPyCharmEclipse自动缩进输入“:”号之后,按“回车”会自动进行缩进介绍Python的关键字和标识符关键字和标识符CHAPTER
TWO目
录C
O
N
T
E
N
T
S01关键字02标识符关键字和标识符“关键字”breakclassprintif它们都具有特定的含义,只能用于特定的位置关键字和标识符a
n
da
sa
s
s
e
rta
s
y
n
ca
w
a
itbre
a
kclasscontinuedefdelelifelseexceptfinallyforfromFalseglobalifimportinislambdanonlocalnotNoneorpassraisereturntryTruewhilewithyield关键字和标识符0102查看Python语言中的关键字>>>
import
keyword>>>
keyword.kwlistPython中的所有关键字是区分for是关键字FOR不是关键字关键字和标识符标识符ONOFF类名对象名方法名变量名标识符关键字和标识符GoalsNeptuneJupiterMarsEarthSaturnVenus“见其名知其意”定义标识符关键字和标识符一个标识符可以由几个单词连接而成,以表明它的意思标识符由一个或多个字母、数字、下划线构成,且第1个字符不能是数字,没有长度限制标识符不能是关键字标识符中字母严格区分大小写标识符命名规则不能含空格、@、%和$特殊字符避免标识符开头和结尾都使用下划线,Python中大量采用这种名字定义特殊方法和变量关键字和标识符MYNAMEname1namemy_name合法标识符关键字和标识符非法标识符#属于Python中的关键字#以数字开头#包含了特殊字符$4genfor$bookPython变量和实例Python变量CHAPTER
TWO目
录C
O
N
T
E
N
T
S01变量规则02变量实例变量程序运行过程中值可以被改变的量1234
常量首次被赋值后,其值还可被其他代码修改变量和变量相对应的是“常量”Python并没有提供定义常量的关键字在PEP8规范中定义常量的命名规范,常量由大写字母和下划线(_)组成变量变量名必须是一个有效的标识符变量名不能使用Python中的关键字应选择有意义的单词作为变量名命名规则123变量需要使用等号(=)不需要类型声明变量赋值等号左边是一个变量名等号右边是一个变量值使用前都必须赋值赋值后变量在内存中被创建变量创建一个整型变量并赋值,如下语句>>>
num
=
128变量创建一个整型变量并赋值,如下语句>>>
num
=
128自动判断类型没有声明类型变量允许变量名用中文字符>>>姓名="小明">>>print(姓名)小明实际应用不建议用中文变量>>>
x=5>>>
id(x)8791631005488>>>
y=x>>>
id(y)8791631005488【例】允许多个变量指向同一个值返回变量内存地址变量>>>
x=5>>>
id(x)8791631005488>>>
y=x>>>
id(y)8791631005488【例】允许多个变量指向同一个值有相同的内存地址变量如果为不同的变量赋值为相同值,这个值在内存中只有一份,多个变量指向同一块内存地址基于值的内存管理方式不同变量赋相同值变量>>>
x+=3>>>
x8>>>
id(x)8791631005584>>>
y5>>>
id(y)8791631005488【例】修改其中一个变量的值,内存地址发生变化x值变,内存地址变变量>>>
x+=3>>>
x8>>>
id(x)8791631005584>>>
y5>>>
id(y)8791631005488【例】修改其中一个变量的值,内存地址发生变化y的内存地址不变变量具有内存自动管理功能没有变量指向的值自动删除回收空间变量>>>
a
=
b
=
c
=
1>>>
id(a)8791631005360>>>
id(b)8791631005360>>>
id(c)8791631005360【例】Python允许为多个变量同时赋值变量>>>
a
=
b
=
c
=
1>>>
id(a)8791631005360>>>
id(b)8791631005360>>>
id(c)8791631005360【例】Python允许为多个变量同时赋值分配相同内存空间变量>>>number=512
#整型的变量>>>
print(type(number))<class
'int'>>>>
number
=
"一流大学"
#字符串类型的变量>>>
print(type(number))<class
'str'>【例】Python变量的类型可以随时变化变量>>>number=512
#整型的变量>>>
print(type(number))<class
'int'>>>>
number
=
"一流大学"
#字符串类型的变量>>>
print(type(number))<class
'str'>【例】Python变量的类型可以随时变化返回变量类型主要介绍数字、字符串、数据类型转换基本数据类型CHAPTER
2目
录C
O
N
T
E
N
T
S01
数字02
字符串03数据类型转换基本数据类型020401030506数字字符串列表元组字典集合基本数据类型数据类型基本数据类型组合数据类型基本数据类型数据类型基本数据类型组合数据类型数字字符串列表元组字典集合基本数据类型数字类型浮点数整数布尔类型复数数字数字类型变量可表示任意大的数值基本数据类型整数正整数负整数0二进制整数十六进制整数十进制整数八进制整数基本数据类型十进制整数0、-3、8、110八进制整数使用8个数字来表示整数以
0o开头,如0o43、-0o123十六进制整数由0~9、A~F组成,以0x/0X开头,比如0x36、0Xa21f整数类型基本数据类型浮点数“小数”浮点数整数部分小数部分基本数据类型浮点数3.140.2-1.6485.8726849267842“小数”浮点数整数部分小数部分1.3e4-0.35e32.36e-3基本数据类型布尔类型True值“真”False值“假”布尔类型基本数据类型布尔值可转换为数值布尔值作为整数的子类对象None值为零空对象FalseFalseFalseTrue的值为1False的值为0基本数据类型实数部分虚数部分a
+
bjcomplex(a,b)复数实部a
虚部b浮点型基本数据类型实部2.38虚部18.2j2.38+18.2j复数基本数据类型字符串字符串是连续的字符序列使用单引号('')双引号("")三引号(''''''或"""""")字符在一行上字符可分布多行基本数据类型010203040506070801
'
xyz'0302
'123'0405060708''
"'厦门'"hadoop"'''spark'''"""flink"""空字符串09
'''
''''
'基本数据类型不同形式字符串#
university.pyuniversity='一流大学'#使用单引号,字符串内容必须在一行motto
=
"自强不息,止于至善。"
#使用双引号,字符串内容必须在一行#使用三引号,字符串内容可以分布在连续的多行上target='''建设成为世界一流的高水平、研究型大学,为国家发展和民族振兴贡献力量!'''print(university)print(motto)print(target)基本数据类型执行结果一流大学自强不息,止于至善。建设成为世界一流的高水平、研究型大学,为国家发展和民族振兴贡献力量!基本数据类型Python支持转义字符使用反斜杠“\”对一些特殊字符进行转义基本数据类型转义字符含义转义字符含义\
n换行符\
r回车\
t制表符\\一个反斜杠\\'单引号\"双引号常用的转义字符及其含义基本数据类型>>>print("自强不息\n止于至善")自强不息止于至善【例】可按示例使用转义字符“\n”基本数据类型开发应用程序时需要进行数据类型的转换数据类型转换基本数据类型常用的数据类型转换函数函数作用int(
x)把x转换成整数类型float(
x)把x转换成浮点数类型str(
x)把x转换成字符串chr(
x)将整数x转换成一个字符ord(
x)将一个字符x转换成对应的整数值基本数据类型关于学生成绩处理实例里面使用了数据类型转换函数>>>
score_computer
=
87.5>>>
score_englisht
=
93.2>>>
score_math
=
90.5>>>
score_sum
=
score_computer
+
score_englisht
+
score_math>>>score_sum_str=str(score_sum)
#转换为字符串>>>print("三门课程总成绩为:"+score_sum_str)三门课程总成绩为:271.2>>>score_int=int(score_sum)
#丢弃小数部分,只保留整数部分>>>
score_int_str
=
str(score_int)>>>print("去除小数部分的成绩为:"+score_int_str)去除小数部分的成绩为:271介绍使用input()函数输入、使用print()函数输出基本输入和输出CHAPTER
2目
录C
O
N
T
E
N
T
S01使用i
n
p
u
t()函数输入02使用p
r
i
n
t()函数输出基本输入和输出一个程序都会有输入、输出,可与用户交互。用户输入信息,程序对内容进行适当的操作,然后输出结果基本输入和输出input()print()输入输出基本输入和输出内置input()接收用户键盘输入基本输入和输出内置input()接收用户键盘输入x=input("提示文字")在Python3.x中基本输入和输出>>>name=input("请输入名字:")请输入名字:小明【例】编写代码要求输入名字input()返回字符串基本输入和输出>>>x=input("请输入:")请输入:8>>>
print(type(x))<class
'str'>>>>x=input("请输入:")请输入:'8'>>>
print(type(x))<class
'str'>>>>x=input("请输入:")请输入:"8">>>
print(type(x))<class
'str'>基本输入和输出>>>x=input("请输入:")请输入:8>>>
print(type(x))<class
'str'>>>>x=input("请输入:")请输入:'8'>>>
print(type(x))<class
'str'>>>>x=input("请输入:")请输入:"8">>>
print(type(x))<class
'str'>都返回字符串基本输入和输出>>>value=int(input("请输入:"))请输入:8>>>
print(type(value))<class
'int'>【例】如果要接收数值需要进行转换基本输入和输出使用print()函数输出01内置函数print()将结果输出到IDLE或控制台上print(输出的内容)基本输入和输出>>>print("计算乘积")计算乘积>>>
x
=
4>>>
print(x)4>>>
y
=
5>>>
print(y)5>>>
print(x*y)20【例】输出是数字和字符串或是表达式print()函数默认换行基本输入和输出#
xmu.pyprint("自强不息")print("止于至善")print("自强不息",end='')print("止于至善")【例】实现输出不换行,可设置end=''基本输入和输出代码的执行结果自强不息止于至善自强不息止于至善基本输入和输出结果输出IDLE或者标准控制台代码示例>>>
fp
=
open(r'C:\motto.txt','a+')>>>print("自强不息,止于至善!",file=fp)>>>
fp.close()基本输入和输出motto.txt基本输入和输出使用%进行格式化输出010203整数的输出浮点数的输出字符串的输出基本输入和输出%o整数的输出%d%x输出八进制整数输出十进制整数输出十六进制整数基本输入和输出【例】整数的输出具体实例>>>
print('%o'
%
30)36>>>
print('%d'
%
30)30>>>
print('%x'
%
30)1e>>>
nHex
=
0xFF>>>print("十六进制是%x,十进制是=%d,八进制是=%o"%
(nHex,nHex,nHex))十六进制是ff,十进制是=255,八进制是=377基本输入和输出如果有6位有效数字,则
使用小数方式,否则使用科学记数法,如果是%.3g,则保留3位有效数字,使
用小数方式或科学记数法保留小数点后6位有效数字,按指数形式输出,如果是%.3e,则保留3位小数位,使用科学记数法保留小数点后6位有效数字如果是%.3f,保留3位小数浮点数的输出%e%f%g基本输入和输出例实>>print('%f'%2.22)#默认保留6位小数
2.220000>>>print('%.1f'%2.22)#取1位小数
2.2>>>print('%e'%2.22)#默认6位小数,用科学计数法
2.220000e+00>>>print('%.3e'%2.22)#取3位小数,用科学计数法
2.220e+00>>>print('%g'%2222.2222)#默认6位有效数字
2222.22>>>print('%.7g'%2222.2222)#取7位有效数字
2222.222>>>print('%.2g'%2222.2222)#取2位有效数字,自动转换为科学计数法
2.2e+03基本输入和输出54321%s:字符串输出%10s:右对齐,占位符10位%-10s:左对齐,占位符10位%.2s:截取2位字符串%10.2s:10位截取两位字符串基本输入和输出实例>>>print('%s'%'hello
world')#字符串输出
hello
world>>>print('%20s'%'hello
world')#右对齐,取20位,不够则补位□□□□□□□□□hello
world>>>print('%-20s'%'hello
world')#左对齐,取20位,不够则补位
hello
world□□□□□□□□□>>>print('%.2s'%'hello
world')#取2位he>>>print('%10.2s'%'hello
world')#右对齐,取2位□□□□□□□□he>>>print('%-10.2s'%'hello
world')#左对齐,取2位he□□□□□□□□>>>name='小明'>>>
age
=
13>>>print('姓名:%s,年龄:%d'%(name,age))姓名:小明,年龄:13基本输入和输出实例>>>print('%s'%'hello
world')#字符串输出
hello
world>>>print('%20s'%'hello
world')#右对齐,取20位,不够则补位□□□□□□□□□hello
world>>>print('%-20s'%'hello
world')#左对齐,取20位,不够则补位
hello
world□□□□□□□□□>>>print('%.2s'%'hello
world')#取2位he>>>print('%10.2s'%'hello
world')#右对齐,取2位□□□□□□□□he>>>print('%-10.2s'%'hello
world')#左对齐,取2位he□□□□□□□□>>>name='小明'>>>
age
=
13>>>print('姓名:%s,年龄:%d'%(name,age))姓名:小明,年龄:13“□”是人为标记空格在屏幕上显示是空白基本输入和输出【例】用“f-字符串”格式化输出print(f'{表达式}')>>>name='小明'>>>
age
=
13>>>print(f'姓名:{name},年龄:{age}')姓名:小明,年龄:13基本输入和输出使用“f-字符串”进行格式化输出用字符串当模板‘%’格式化输出format()格式化输出通过传入的参数进行格式化用大括号‘{}’作为特殊字符代替‘%’基本输入和输出不带编号“{}”带数字编号调换显示顺序“{1}”“{2}”“{key}”“{value}”带关键字的基本输入和输出>>>print('{}{}'.format('hello','world'))#不带字段
hello
world>>>print('{0}{1}'.format('hello','world'))#带数字编号
hello
world>>>print('{0}{1}{0}'.format('hello','world'))#打乱顺序
hello
world
hello>>>print('{1}{1}{0}'.format('hello','world'))#打乱顺序
world
world
hello>>>print('{a}{b}{a}'.format(b='hello',a='world'))#带关键字world
hello
world实例介绍Python语言所支持的各种运算符和表达式运算符和表达式CHAPTER
2目录C
ON
T
E01NT
S算术运算符和表达式02赋值运算符和表达式03比较运算符和表达式04逻辑运算符和表达式05运算符优先级与结合性运算符和表达式算术运算符关系运算符位运算符逻辑运算符Python运算符运算符和表达式表达式“算术表达式”“逻辑表达式”运算符和表达式处理算术运算符和表达式运算符和表达式运算符说明表达式+加(两个对象相加)4+5
(结果是9
)-减(得到负数,或是一个数减去另一个数)7-10
(结果是-3
)*乘(两个数相乘,或是返回一个被重复若干次的字符串)4
*
5
(结果是20
)/除(
x除以y)10/4
(结果是2.5
)%取模(返回除法的余数)10%4
(结果是2
)**幂(返回x的y次幂)10
**
2
(结果是100
)//取整除(返回商的整数部分)10//4
(结果是2
)运算符和表达式赋值运算符和表达式主要用来为变量等赋值运算符和表达式左侧变量右侧变量(=)不是数学中的等于号运算符和表达式运算符说明表达式等价形式=简单的赋值运算a=ba=b+=加赋值a+=ba=a+b-
=减赋值a-
=ba=a-
b*
=乘赋值a*
=ba=a*
b/
=除赋值a/
=ba=a/
b%
=取余数赋值a%
=ba=a%
b**
=幂赋值a**
=ba=a**
b//
=取整除赋值a//
=ba=a//
b赋值运算符与表达式运算符和表达式左侧只能是变量名(=)因为只有变量才拥有存储空间,可以把数值放进去“a+b=c”“a=b+c=10”运算符和表达式比较运算符和表达式用于比较大小也称为“关系运算符”运算结果为布尔型比较运算符运算符和表达式当关系表达式成立当关系表达式不成立结果为True结果为False运算符和表达式运算符说明表达式>大于4>5(结果为False)<小于4<5(结果为True)==等于4==5(结果为False)!
=不等于4!=5(结果为True)>=大于等于5>=4(结果为True)<=小于等于4<=5(结果为True)运算符和表达式逻辑运算符和表达式逻辑运算符对布尔型数据进行运算,运算结果仍为布尔型运算符和表达式运算符说明表达式and逻辑与exp
1
and
exp
2or逻辑或exp
1
or
exp
2not逻辑非not
exp运算符和表达式运算符说明表达式and逻辑与exp
1
and
exp
2or逻辑或exp
1
or
exp
2not逻辑非not
exp表达式逻辑运算运算符和表达式表达式1表达式2表达式1
a
n
d表达式2表达式1
o
r表达式2n
o
t表达式1TrueTrueTrueTrueFalseTrueFalseFalseTrueFalseFalseFalseFalseFalseTrueFalseTrueFalseTrueTrue运算符和表达式运算符的优先级与结合性所谓优先级,就是当多个运算符同时出现在一个表达式中时,先执行哪个运算符,例如实例“3+4*5”先计算乘法再加法23结果为23运算符和表达式结合性“左结合性”“右结合性”先执行左边先执行右边优先级相同/和*优先级相同,这个时候就不能只依赖运算符优先级决定了,还要参考运算符的结合性。/和*都具有左结合性,因此先执行左边的除法,再执行右边的乘法,最终结果是80.0例“100/5*4”运算符和表达式左结合性→从左到右执行只有乘方运算符(**)、单目运算符(例如not)、赋值运算符和三目运算符例外,它们具有右结合性,也就是从右向左执行运算符和表达式运算符说明结合性优先级()小括号无高低**幂右+(正号)、-(负号)符号运算符右*、/、//、%乘除左+、-加减左==、!=、>、>=、<、<=比较运算符左not逻辑非右and逻辑与左or逻辑或左Python程序具有三种典型的控制结构程序控制结构CHAPTER
3程序控制结构E.
W.
Dijkstra1965年程序控制结构自顶向下逐步求精模块化程序控制结构结构化程序设计顺序结构选择结构循环结构程序控制结构以控制结构为单位每个模块只有一个入口和一个出口能够以控制结构为单位从上到下顺序地阅读程序文本静态描述与执行时的控制流程对应能够方便正确地理解程序的动作01程序控制结构的类型02选择语句、循环语句和跳转语句03综合实例目
录C
O
N
T
E
N
T
S程序控制结构程序控制结构顺序结构选择结构循环结构“分支结构”介绍Python的四种选择语句选择语句CHAPTER
3目
录C
O
N
T
E
N
T
S01i
f语句02i
f…e
l
se语句03i
f…el
i
f…e
l
s
e多分支语句04i
f语句的嵌套选择语句选择语句条件语句判断根据不同的条件执行不同的语句选择语句01简单的if语句03if…elif…else多分支语句02if…else语句选择语句if语句if
语句如果满足某种情况,就进行某种处理if表达式:语句块选择语句表达式单一的值变量复杂语句选择语句真则执行语句块假则跳过语句块选择语句#
two_number.pya,b,c
=
4,5,0if
a>b:c
=
b05
if
a<b:c
=
aprint("两个数的较小值是:",c)程序注释赋值语句条件判断b赋值c条件判断a赋值c选择语句if…else语句if…else通用形式如果满足某种条件就进行某种处理否则进行另一种处理if表达式:语句块1else:语句块2选择语句单一的值或者变量由运算符组成的复杂语句选择语句#
odd_even.pya
=
5if
a
%
2
==
0:print("这是一个偶数。")else:print("这是一个奇数。")【例3-2】判断一个数是奇数还是偶数程序注释赋值语句条件判断打印输出else分支打印输出选择语句if…elif…else多分支语句“if…elif…else”多分支语句用于针对某一事件的多种情况进行处理,通常表现为如果满足某种条件,就进行某种处理,否则如果满足另一种条件则执行另一种处理if表达式1:语句块1elif表达式2:语句块2elif表达式3:语句块3…else:语句块n选择语句单一的值或者变量运算符组成的复杂语句选择语句选择语句#
lesson.pyday=int(input("请输入第几天课程:"))if
day
==
1:print("第1天上数学课")elif
day
==
2:print("第2天上语文课")else:print("其他时间上计算机课")【例3-3】判断每天上课的内容程序注释键盘输入条件判断打印输出判断day打印输出else分支打印输出选择语句if语句的嵌套ifif…elif…elseif…else选择语句0102if表达式1:if表达式2:语句块1else:语句块2if表达式1:if表达式2:语句块1else:语句块2else:if表达式3:语句块3else:语句块4在if语句中嵌套if…else语句在if…else语句中嵌套if…else语句选择语句0102if表达式1:if表达式2:语句块1else:语句块2if表达式1:if表达式2:语句块1else:语句块2else:if表达式3:语句块3else:语句块4在if语句中嵌套if…else语句在if…else语句中嵌套if…else语句在开发程序时,需要根据具体的应用场景选择合适的嵌套方案。需要注意的是在相互嵌套时,要严格遵守不同级别语句块的缩进规范选择语句选择语句≥80mg/100ml>20mg/100ml<20mg/100ml判断酒驾判断是否为酒后驾车选择语句#
drunk-driving.pyalcohol=int(input("请输入驾驶员每100ml血液酒精的含量:"))if
alcohol
<
20:print("驾驶员不构成酒驾")else:if
alcohol
<
80:print("驾驶员已构成酒驾")else:print("驾驶员已构成醉驾")【例3-4】判断是否为酒后驾车程序注释提示输入条件判断打印输出else分支判断值域打印输出else分支打印输出选择语句优良及格不及格成绩≥9060≤成绩<7575≤成绩<90成绩<60判断数学成绩属于哪个等级选择语句#
math_score.pymath=int(input("请输入数学成绩:"))if
math
>=
75:if
math
>=
90:【例3-5】判断数学成绩属于哪个等级程序注释提示输入条件判断条件判断05print("数学成绩为优")打印输出06else:else分支07print("数学成绩为良")打印输出08else:else分支09if
math
>=60:条件判断10print("数学成绩及格了")打印输出11else:else分支12print("数学成绩不及格")打印输出选择语句判断某一年是否闰年1996年2004年能被4整除不能被100整除能被100整除又能被400整除闰
年2000年选择语句#year.pyyear=int(input("请输入年份:"))if
year
%
4
==
0:if
year
%
100
==
0:if
year
%
400
==
0:flag
=
1else:flag
=
0else:flag
=
1else:flag
=
0if
flag
==
1:print(year,"年是闰年")else:print(year,"年不是闰年")【例3-6】判断某一年是否闰年程序注释提示输入条件判断条件判断条件判断设置flagelse分支flag值0while循环语句和for循环语句循环语句CHAPTER
301w
h
i
l
e循环语句02for循环语句03循环嵌套目
录C
O
N
T
E
N
T
S循环语句0102w
h
ile
循环语句fo
r循环语句循环语句就是重复执行某段程序代码,直到满足特定条件为止循环语句表达式控制循环的语句while表达式:语句块while循环语句循环语句“循环体”循环语句#
int_sum.pyn
=
1sum
=
0while(n
<=
99):sum
+=
nn
+=
1print("1~99的整数和是:",sum)【例3-7】用while循环实现计算1
~
99的整数和程序注释赋值语句0赋值sum条件判断n加到sum对n加1打印输出循环语句设计一个小游戏,让玩家输入一个数字,程序判断是奇数还是偶数循环语句#
digit.pyprompt='输入一个数字,我将告诉你,它是奇数,还是偶数'prompt+='\n输入“结束游戏”,将退出本程序:'exit='结束游戏'#退出指令content=''#输入内容while
content
!=
exit:content
=
input(prompt)if
content.isdigit():
#isdigit()函数用于检测字符串是否只由数字组成number
=
int(content)if
(number
%
2
==
0):print('该数是偶数')else:print('该数是奇数')elif
content
!=
exit:print('输入的必须是数字')【例3-7】用while循环实现计算1
~
99的整数和程序注释赋值字符串拼接字符串赋值字符串条件判断if分支语句赋值语句条件判断打印输出else分支打印输出条件判断打印输出循环语句“死循环”“无限循环”正常结束循环语句【例】i<100,运行后程序不停输出001
i=0while
i<100:print(i)循环语句for循环语句for循环语句for迭代变量in对象:语句块迭代变量用于保存读取出的值对象遍历或迭代的对象循环语句字符串列表元组序列对象循环语句语句块“循环体”语句块语句块循环语句#
int_sum_for.pysum=0for
n
in
range(1,100):#range(1,100)用于生成1到100(不包括100)的整数sum+=nprint("1到99的整数和是:",sum)【例3-9】用for循环实现计算1
~
99的整数和程序注释0赋值sumrange()n加到sum打印输出循环语句range(stop)range(start,stop)range(start,stop,step)生成从0开始到stop结束(不包含stop)的一系列数值。比如,range(3)生成的数值是0、1、2生成从start开始到stop结束(不含stop)一系列数值。如,range(2,5)生成的数值是2、3、4生成从start开始到stop结束(不含stop)、步
长为step的一系列数值。如,range(2,10,2)生成的数值是2、4、6、8,range(10,1,-2)生成的数值是10、8、6、4、2循环语句#
int_sum_for.pysum=0for
n
in
range(1,100):#range(1,100)用于生成1到100(不包括100)的整数sum+=nprint("1到99的整数和是:",sum)【例3-9】用for循环实现计算1
~
99的整数和程序注释0赋值sumrange()n加到sum打印输出循环语句sum+=n相当于
sum=sum+n123sum=0+1sum=1+2sum=3+3循环语句#
int_sum_for.pysum=0for
n
in
range(1,100):#range(1,100)用于生成1到100(不包括100)的整数sum+=nprint("1到99的整数和是:",sum)【例3-9】用for循环实现计算1
~
99的整数和程序注释0赋值sumrange()n加到sum打印输出循环语句输出所有的“水仙花数”一个3位数各位数字立方和等于该数本身153是水仙花,153=13+53+33循环语句#
narcissus.pyfor
i
in
range(100,1000):a=i%10#个位数b=i//10%10#十位数c=i//100#百位数if(i
==
a
**
3
+
b
**
3
+
c
**
3):print(i)【例3-10】输出所有的“水仙花数”程序注释range()求解余数对10取余得百位数条件判断打印输出循环语句数值mm能被2到
整除素数不是素数是否循环语句#math.sqr
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年5月南方医科大学深圳口腔医院(坪山)选聘2人备考题库(广东)及一套答案详解
- 2026广东广州中医药大学第一批招聘11人备考题库及参考答案详解1套
- 学生碎片化时间利用AI全科精进提分执行方案
- 2026年全国施工员之市政施工专业管理实务考试经典测试题详细参考解析
- 2026学年河北省武安市五年级数学期末点睛提升黑金提分题详细参考解析详细答案和解析
- 2026浙江温州设计控股集团有限公司部分紧缺专业技术岗位招聘2人备考题库及答案详解一套
- 2026广东湛江市霞山区赴高校招聘教师39人备考题库(编制)及1套完整答案详解
- 简约型修订合同协议
- 硬质合金工具制品项目投资计划书
- 2026年湖南长沙市多校联考中考二模九年级数学 试题(学生版+解析版)
- 2026内蒙古鄂尔多斯市本级事业单位第二批引进高层次和紧缺人才28人备考题库及完整答案详解一套
- 2026年中国烟草校招综合知识试题及答案
- 2026年高考全国II卷理综考试真题及答案
- 2026-2030中国半导体行业深度调研及投资前景预测研究报告
- 2026年娄底职业技术学院教师招聘考试参考题库及答案解析
- 2025年安徽农村信用社招聘综合真题及答案
- 铸造厂高危作业审批制度
- 《智能产品设计》全套教学课件
- 《消费者行为学》课件 第5章 消费者的需要与动机
- 设备调试进度汇报说明4篇
- 养殖猪场应急预案(3篇)
评论
0/150
提交评论