python基础以及面向对象

python基础

python基础

第一单元 Python解释器和IDE的安装和初步使用

一、昨日知识点回顾


二、本单元知识点概述

(Ⅰ)指定教材

​ 引用自指定教材《零基础学Python全彩版》,第1章 初识Python,页码区间<1,22>页

(Ⅱ)知识点概述

在这里插入图片描述

(Ⅲ)教学时长

​ 共4课时,180分钟


三、本单元教学目标

(Ⅰ)重点知识目标

1.Python的应用领域
2.Python安装
3.Pycharm安装
4.Pycharm中创建项目名称、包名、项目存放地址
5.使用Pycharm输出第一个Python“Hello World”程序

(Ⅱ)能力目标

1.能够对Python编程语言有初步了解
2.能够独立搭建Python开发环境
3.能够写出简单的输出字符串的程序

四、本单元知识详讲

1.1 计算机介绍

1.1.1 计算机发展史 ★★

第一台计算机

在这里插入图片描述

第一台计算机介绍

诞生原因:美国奥伯丁武器试验场为了满足计算弹道需要而研制成的

诞生时间:1946年2月14日

名字:ENIAC

组成元件:电子管

地点:宾夕法尼亚大学

计算机之父:约翰.冯·诺依曼

计算机之父介绍

在这里插入图片描述

简介:冯·诺依曼(1903-1957),美藉匈牙利人,物理学家,数学家,发明家,在发明电子计算机中所起到关键性作用,提出计算机内部以二进制数形式进行存储,基本工作原理是存储程序和程序控制,冯·诺依曼被称为“计算机之父”。

1.1.2 计算机组成 ★★★

用手机作类比,计算机由硬件和软件组成

在这里插入图片描述

计算机的硬件组成部分

概念:是组成计算机系统的各种物理设备的总称(看得见,摸得着的)

在这里插入图片描述

组成:

输入设备:鼠标、键盘、摄像头、麦克风

输出设备:显示器、音响、打印机

运算器:计算机中执行各种算术和逻辑运算操作的部件

控制器:是整个计算机系统的控制中心,它指挥计算机各部分协调的工作,保证计算机按照预先规定的目标和步骤有条不紊的进行操作及处理。运算器和控制器统称为中央处理器(CPU)

存储器:是计算机系统中的记忆设备,用来存放程序和数据。分为内存和外存

在这里插入图片描述

计算机的软件组成部分

概念:计算机软件(Computer Software,也称软件,软体)是指计算机系统中的程序及其文档

在这里插入图片描述

分类:

​ 系统软件:操作系统(OS)

​ 操作系统:Windows,Linux,Mac,DOS,Unix,Android,IOS

​ 应用软件:QQ、微信、office办公软件、游戏软件

1.2 Python概述

1.2.1 了解Python语言 ★★

Python的作者,Guido van Rossum(吉多·范·罗苏姆,中国Python程序员都叫他 龟叔),荷兰人。1982年,龟叔从阿姆斯特丹大学获得了数学和计算机硕士学位。然而,尽管他算得上是一位数学家,但他更加享受计算机带来的乐趣。用他的话说,虽然拥有数学和计算机双料资质,他总趋向于做计算机相关的工作,并热衷于做任何和编程相关的事情。

Python就是一门编程语言,而且是现在世界上最流行的编程语言之一。

1.2.2 Python的应用领域 ★★★

Web开发

Python经常被用于Web开发。比如,通过mod_wsgi模块,Apache可以运行用Python编写的Web程序。Python定义了WSGI标准应用接口来协调Http服务器与基于Python的Web程序之间的通信。一些Web框架,如Django,TurboGears,web2py,Zope等,可以让程序员轻松地开发和管理复杂的Web程序。

自动化运维开发

在很多操作系统里,Python是标准的系统组件。 大多数Linux发行版以及NetBSD、OpenBSD和Mac OS X都集成了Python,可以在终端下直接运行Python。有一些Linux发行版的安装器使用Python语言编写,比如Ubuntu的Ubiquity安装器,Red Hat Linux和Fedora的Anaconda安装器。Gentoo Linux使用Python来编写它的Portage包管理系统。Python标准库包含了多个调用操作系统功能的库。通过pywin32这个第三方软件 包,Python能够访问Windows的COM服务及其它Windows API。使用IronPython,Python程序能够直接调用.Net Framework。一般说来,Python编写的系统管理脚本在可读性、性能、代码重用度、扩展性几方面都优于普通的shell脚本。

网络爬虫

Python有大量的HTTP请求处理库和HTML解析库,并且有成熟高效的爬虫框架Scrapy和分布式解决方案scrapy-redis,在爬虫的应用方面非常广泛。

科学计算

NumPy、SciPy、Pandas、Matplotlib可以让Python程序员编写科学计算程序。

服务器软件(网络软件)

Python对于各种网络协议的支持很完善,因此经常被用于编写服务器软件、网络爬虫。第三方库Twisted支持异步网络编程和多数标准的网络协议(包含客户端和服务器),并且提供了多种工具,被广泛用于编写高性能的服务器软件。

游戏开发

很多游戏使用C++编写图形显示等高性能模块,而使用Python或者Lua编写游戏的逻辑、服务器。相较于Python,Lua的功能更简单、体积更小;而Python则支持更多的特性和数据类型。

1.2.3 Python的版本 ★★

python自发布以来,主要有三个版本

1994年发布的 Python1.0版本(已过时)

2000年发布的 Python2.0版本

2008年发布的 Python3.0版本

1.3 Python解释器和IDE安装

1.3.1 Python安装 ★★★

1.勾选添加环境变量并安装

在这里插入图片描述

2.等待安装完场即可

在这里插入图片描述

3.点击close关闭即可

在这里插入图片描述

1.3.2 Pycharm安装 ★★★

1.将Pycharm安装包直接打开,点击Next进行下一步

在这里插入图片描述

2.勾选之后点击Next

在这里插入图片描述

3.点击Next进入下一步

在这里插入图片描述

4.直接点击Install进行安装即可

在这里插入图片描述

5.在该窗口勾选“Run Pycharm”,然后点击"Finish按钮"完成安装

在这里插入图片描述

1.4 第一个Python“Hello World”程序

1.4.1 Pycharm中创建项目名称、包名、项目存放地址 ★★★

1.打开 Pycharm,选择 Create New Project,创建一个新项目

在这里插入图片描述

2.选择Pure Python表示创建一个纯Python程序项目,Location 表示该项目保存的路径,Interpreter 表示使用的Python解释器版本,最后点击Create 创建项目。

在这里插入图片描述

3.右击项目,选择New,再选择Python File

在这里插入图片描述

4.在弹出的对话框中输入的文件名HelloPython,点击OK,表示创建一个Python程序的文本文件,文本文件后缀名默认.py

在这里插入图片描述

1.4.2 使用Pycharm输出第一个Python “Hello World”程序 ★★★

1.输入以下代码,并右击空白处,选择Run运行,表示打印一个字符串"Hello World!"。

在这里插入图片描述

2.运行成功后,Pycharm Console窗口将显示我们的输出结果。

在这里插入图片描述


五、本单元知识总结

1. Python安装
2. Pycharm使用方法
3. Pycharm输出简单的demo

六、作业安排

(Ⅰ)课后作业

1.完成练习手册第一单元,选择题,填空题,简答题、技能题

(Ⅲ)预习作业

1.预习第二单元,Python中变量及简单数据类型知识点
2.预习教材,Python语言基础
预习附录:
1.参见教材:第二章<2454>

第二单元 Python中变量及简单数据类型

一、昨日知识点回顾

1. 什么是Python?
2. 如何搭建Python开发环境?
3. 如何安装Python?
4. 如何安装Pycharm?
5. 如何在Pycharm中创建项目?
6. 如何在Pycharm中输出第一个‘Hello World’程序?

二、本单元知识点概述

(Ⅰ)指定教材

​ 引用自指定教材《零基础学Python全彩版》,第2章 Python语言基础,页码区间<24,54>页

(Ⅱ)知识点概述

在这里插入图片描述

(Ⅲ)教学时长

​ 共4课时,180分钟


三、本单元教学目标

(Ⅰ)重点知识目标

1.变量的定义、类型、输出
2.标识符的命名规则、命名方法、关键字
3.Python中的输入与格式化输出
4.Python中的运算符
5.Python中的常用的数据类型的转换

(Ⅱ)能力目标

1.掌握变量的定义和作用
2.掌握标识符的命名规则和命名方法
3.掌握Python输入函数和常用的格式化输出符号 
4.掌握Python中运算符
5.掌握Python中常用的强转方法

四、本单元知识详讲

2.1 变量

2.1.1 变量的定义 ★★★★

在程序中,有时我们需要对2个数据进行求和,那么该怎样做呢?

大家类比一下现实生活中,比如去超市买东西,往往咱们需要一个菜篮子,用来进行存储物品,等到所有的物品都购买完成后,在收银台进行结账即可

如果在程序中,需要把2个数据,或者多个数据进行求和的话,那么就需要把这些数据先存储起来,然后把它们累加起来即可

在Python中,存储一个数据,需要一个叫做变量的东西,如下示例:

num1 = 100  # num1就是一个变量,就好一个小菜篮子

num2 = 87  # num2也是一个变量

result = num1 + num2  # 把num1和num2这两个"菜篮子"中的数据进行累加,然后放到 result变量中

说明:

  • 所谓变量,可以理解为菜篮子,如果需要存储多个数据,最简单的方式是有多个变量,当然了也可以使用一个

  • 程序就是用来处理数据的,而变量就是用来存储数据的

    想一想:我们应该让变量占用多大的空间,保存什么样的数据?

2.1.2 变量的类型 ★★★★

生活中的类型的例子:

在这里插入图片描述

程序中:

在这里插入图片描述

怎样知道一个变量的类型呢?

  • 在python中,只要定义了一个变量,而且它有数据,那么它的类型就已经确定了,不需要咱们开发者主动的去说明它的类型,系统会自动辨别
  • 可以使用type(变量的名字),来查看变量的类型
2.1.3 变量的输出 ★★★

前面我们学习了变量。我们定义一个变量后,该如何输出这个变量呢?我们这时就需要print()这个函数。

如果输出内容的话,把内容添加在括号里,并用双引号引起来,像print(“Hello World!”),

如果我们输出一个变量的话,把变量名添加到括号里面就可以了。

这里我们定义一个变量name,并输出这个变量。

在这里插入图片描述

这个变量打印出来了,但现在我觉得,这样输出有点单调,我们可以这样,给它修改一下(图1.3),

在变量前加一些提示语,这样显得语句更通顺。

在这里插入图片描述

2.2 标识符

什么是标识符,看下图:

在这里插入图片描述

  • 开发人员在程序中自定义的一些符号和名称
  • 标识符是自己定义的,如变量名 、函数名等
2.2.1 标识符的命名规则 ★★★★★
  • 标识符由字母、下划线和数字组成,且数字不能开头

    思考:下面的标识符哪些是正确的,哪些不正确为什么

    fromNo12
    
    from#12
    my_Boolean
    my-Boolean
    Obj2
    2ndObj
    myInt
    test1
    Mike2jack
    My_tExt
    _test
    test!32
    haha(da)tt
    int
    jack_rose
    jack&rose
    GUI
    G.U.I
    
  • python中的标识符是区分大小写的

    在这里插入图片描述

    命名规则
    见名知意

    起一个有意义的名字,尽量做到看一眼就知道是什么意思(提高代码可 读性) 比如: 名字 就定义为 name , 定义学生 用 student

2.2.2 标识符的命名方法 ★★★★★

在这里插入图片描述

  • 小驼峰式命名法(lower camel case): 第一个单词以小写字母开始;第二个单词的首字母大写,例如:myName、aDog
  • 大驼峰式命名法(upper camel case): 每一个单字的首字母都采用大写字母,例如:FirstName、LastName
  • 还有一种命名法是用下划线“_”来连接所有的单词,比如send_buf

Python的命令规则遵循PEP8标准,这个在后面会慢慢讲到。

2.2.3 Python中的关键字 ★★★★★

什么是关键字

python一些具有特殊功能的标识符,这就是所谓的关键字 关键字,是python已经使用的了,所以不允许开发者自己定义和关键字相同的名字的标识符

查看关键字

'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'

可以在Python Shell通过以下命令进行查看当前系统中python的关键字

>>> import keyword
>>> keyword.kwlist

关键字的学习以及使用,咱们会在后面的课程中一一进行学习。

2.3 Python中的输入与格式化输出

2.3.1 常用的格式化输出符号的介绍★★★

格式化操作的目的

比如有以下代码:

pirnt("我今年10岁")  
pirnt("我今年11岁")  
pirnt("我今年12岁")
  • 想一想:

    在输出年龄的时候,用了多次"我今年xx岁",能否简化一下程序呢???

  • 答:

    字符串格式化

什么是格式化

看如下代码:

age = 10  
print("我今年%d岁" % age)  

age += 1  
print("我今年%d岁" % age)  

age += 1  
print("我今年%d岁" % age)  


在程序中,看到了%这样的操作符,这就是Python中格式化输出。

age = 18  
name = "xiaohua"  
print("我的姓名是%s, 年龄是%d" % (name, age))

常用的格式符号

下面是完整的,它可以与%符号使用列表:

格式符号 转换
%c 字符
%s 字符串
%d 有符号十进制整数
%u 无符号十进制整数
%o 八进制整数
%x 十六进制整数(小写字母0x)
%X 十六进制整数(大写字母0X)
%f 浮点数
%e 科学计数法(小写’e’)
%E 科学计数法(大写“E”)
%g %f和%e 的简写
%G %f和%E的简写

换行输出

在输出的时候,如果有\n那么,此时\n后的内容会在另外一行显示

print("1234567890-------") # 会在一行显示  
 
print("1234567890\n-------") # 一行显示1234567890,另外一行显示-------

练一练

编写代码完成以下名片的显示

==========我的名片==========  
 姓名: jiyun  
 QQ:xxxxxxx  
 手机号:185xxxxxx  
 公司地址:北京市xxxx

2.3.2 输入函数的介绍 ★★★★

在这里插入图片描述

咱们在银行ATM机器前取钱时,肯定需要输入密码,对不?

那么怎样才能让程序知道咱们刚刚输入的是什么呢??

大家应该知道了,如果要完成ATM机取钱这件事情,需要先从键盘中输入一个数据,然后用一个变量来保存,是不是很好理解啊。

在Python中,获取键盘输入的数据的方法是采用 input 函数(至于什么是函数,咱们以后的章节中讲解),那么这个 input 怎么用呢?

>>> a = input() 
123
>>> a
123
>>> type(a)
<type 'int'>
>>> a = input()
abc
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "<string>", line 1, in <module>
NameError: name 'abc' is not defined
>>> a = input()
"abc"
>>> a
'abc'
>>> type(a)
<type 'str'>
>>> a = input()
1+3
>>> a
4
>>> a = input()
"abc"+"def"
>>> a
'abcdef'
>>> value = 100
>>> a = input()
value
>>> a
100

input()接受表达式输入,并把表达式的结果赋值给等号左边的变量

2.4 Python中的运算符

2.4.1 算术运算符 ★★★★★

下面以a=10 ,b=20为例进行计算

运算符 描述 实例
+ 两个对象相加 a + b 输出结果 30
- 得到负数或是一个数减去另一个数 a - b 输出结果 -10
* 两个数相乘或是返回一个被重复若干次的字符串 a * b 输出结果 200
/ b / a 输出结果 2
// 取整除 返回商的整数部分 9//2 输出结果 4 , 9.0//2.0 输出结果 4.0
% 取余 返回除法的余数 b % a 输出结果 0
** 指数 a**b 为10的20次方, 输出结果 100000000000000000000

示例:

a = 21
b = 10
c = 0
 
c = a + b
print "1 - c 的值为:", c
 
c = a - b
print "2 - c 的值为:", c 
 
c = a * b
print "3 - c 的值为:", c 
 
c = a / b
print "4 - c 的值为:", c 
 
c = a % b
print "5 - c 的值为:", c
 
# 修改变量 a 、b 、c
a = 2
b = 3
c = a**b 
print "6 - c 的值为:", c
 
a = 10
b = 5
c = a//b 
print "7 - c 的值为:", c

运行结果:

1 - c 的值为: 31
2 - c 的值为: 11
3 - c 的值为: 210
4 - c 的值为: 2
5 - c 的值为: 1
6 - c 的值为: 8
7 - c 的值为: 2

注意:混合运算时,优先级顺序为: ** 高于 * / % // 高于 + - ,为了避免歧义,建议使用 () 来处理运算符优先级。

并且,不同类型的数字在进行混合运算时,整数将会转换成浮点数进行运算。

>>> 10 + 5.5 * 2
21.0
>>> 10 + (5.5 * 2)
21.0

2.4.2 赋值运算符 ★★★★★
运算符 描述 实例
= 赋值运算符 把 = 号右边的结果 赋给 左边的变量,如 num = 1 + 2 * 3,结果num的值为7
# 单个变量赋值
>>> num = 10
>>> num
10

# 多个变量赋值
>>> num1, num2, f1, str1 = 100, 200, 3.14, "hello"
>>> num1
100
>>> num2
200
>>> f1
3.14
>>> str1
"hello"

2.4.3 复合赋值运算符 ★★★★★
运算符 描述 实例
+= 加法赋值运算符 c += a 等效于 c = c + a
-= 减法赋值运算符 c -= a 等效于 c = c - a
*= 乘法赋值运算符 c *= a 等效于 c = c * a
/= 除法赋值运算符 c /= a 等效于 c = c / a
%= 取模赋值运算符 c %= a 等效于 c = c % a
**= 幂赋值运算符 c **= a 等效于 c = c ** a
//= 取整除赋值运算符 c //= a 等效于 c = c // a

示例:

a = 21
b = 10
c = 0
 
c = a + b
print "1 - c 的值为:", c
 
c += a
print "2 - c 的值为:", c 
 
c *= a
print "3 - c 的值为:", c 
 
c /= a 
print "4 - c 的值为:", c 
 
c = 2
c %= a
print "5 - c 的值为:", c
 
c **= a
print "6 - c 的值为:", c
 
c //= a
print "7 - c 的值为:", c

运算结果:

1 - c 的值为: 31
2 - c 的值为: 52
3 - c 的值为: 1092
4 - c 的值为: 52
5 - c 的值为: 2
6 - c 的值为: 2097152
7 - c 的值为: 99864

2.5 Python中常见的数据类型转换

2.5.1 掌握常用的强转方法 ★★★★★

常用的数据类型转换

函数 说明
int(x [,base ]) 将x转换为一个整数
float(x ) 将x转换为一个浮点数
complex(real [,imag ]) 创建一个复数,real为实部,imag为虚部
str(x ) 将对象 x 转换为字符串
repr(x ) 将对象 x 转换为表达式字符串
eval(str ) 用来计算在字符串中的有效Python表达式,并返回一个对象
tuple(s ) 将序列 s 转换为一个元组
list(s ) 将序列 s 转换为一个列表
chr(x ) 将一个整数转换为一个Unicode字符
ord(x ) 将一个字符转换为它的ASCII整数值
hex(x ) 将一个整数转换为一个十六进制字符串
oct(x ) 将一个整数转换为一个八进制字符串
bin(x ) 将一个整数转换为一个二进制字符串

举例

>>> # int(): 将数据转换为 int 类型

>>> str1 = "10"
>>> # int() 默认按10进制转换后显示
>>> num1 = int(str1)
>>> 
>>> # int() 处理浮点数,只留下整数部分,舍弃小数部分(并不是四舍五入操作)
>>> num2 = int(3.74)
>>> print(num2)
3
>>> 
>>> """
... num1 = int(str1, 8) # 第二个参数为8,表示按8进制转换后显示,结果为 8
... num1 = int(str1, 16) # # 第二个参数为16,表示按16进制转换后显示,结果为 16
... # 01 02 03 04 05 06 07 10
... # 01 02 ... 0B 0C 0D 0E 0F 10
... print(num1)
... """
>>> 
>>> # float() 将数据转化为浮点数
>>> str2 = "3.14"
>>> f1 = float(str2)
>>> print(type(f1))
<class 'float'>
>>> 
>>> f2 = float(10)
>>> print(f2)
10.0
>>> 
>>> # complex() 创建复数: 第一个参数是复数的实部,第二个参数是复数的虚部
>>> c1 = 10 + 4j
>>> c2 = complex(10, 4)
>>> 
>>> print(c1)
(10+4j)
>>> print(c2) # 等同与c1
(10+4j)
>>> 
>>> # str() : 转换为 字符串类型
>>> num1 = 10
>>> f1 = 3.14
>>> 
>>> print(type(str(num1)))
<class 'str'>
>>> print(type(str(f1)))
<class 'str'>
>>> 
>>> # repr(): 转换为表达式字符串
>>> num1 = 10
>>> print(type(repr(num1)))
<class 'str'>
>>> 
>>> 
>>> # eval(): 将字符串形式的数据,转换为原本的类型
>>> str1 = "3.14"
>>> print(type(eval(str1)))
<class 'float'>
>>> 
>>> str2 = "[10, 20, 30]"
>>> l = eval(str2)
>>> print(type(l))
<class 'list'>
>>> 
>>> 
>>> # chr: 将一个整数转换为对应的 Unicode 字符
>>> s = chr(1065)
>>> print(s)
Щ
>>> 
>>> # ord :将一个字符转换为对应的字符编码数字
>>> n = ord("A")
>>> print(n)
65
>>> 
>>> # bin: 将一个整数转换为二进制
>>> print(bin(1024)) # 0b 开头表示二进制数
0b10000000000
>>> 
>>> # oct:将一个整数转换为八进制
>>> print(oct(1024)) # 0o 开头表示八进制数
0o2000
>>> 
>>> # hex: 将一个整数转换为十六进制
>>> print(hex(1024)) # 0x 开头表示十六进制
0x400
>>>

附录:常用字符与ASCII码对照表

在这里插入图片描述


五、本单元知识总结

1.变量的定义、类型、输出
2.标识符的命名规则、命名方法、关键字
3.Python中的输入与格式化输出
4.Python中的运算符
5.Python中的常用的数据类型的转换


六、作业安排

(Ⅰ)课后作业

1.完成练习手册第二单元,选择题,填空题,简答题(1,2,4)、技能题(1、2、3)
2.完成教材第二章节,课后习题(实战一,实战二,实战三,实战四)

(Ⅲ)预习作业

1.预习第三单元,判断语句
2.预习教材,第三章 流程控制语句

预习附录:
1.参见教材:第五章<55,66>页

第三单元 判断语句

一、昨日知识点回顾

1. Python中运算符有哪些?
2. Python中常用的强转方法有哪些?
3. 变量的定义和作用?
4. Python输入函数和常用的格式化输出符号有哪些?
5. 掌握标识符的命名规则和命名方法?

二、本单元知识点概述

(Ⅰ)指定教材

​ 引用自指定教材《零基础学Python(全彩版)》,第3章 流程控制语句,页码区间<56,66>页

(Ⅱ)知识点概述

在这里插入图片描述

(Ⅲ)教学时长

​ 共4课时,180分钟


三、本单元教学目标

(Ⅰ)重点知识目标

1.if判断语句
2.多项选择判断
3.if嵌套

(Ⅱ)能力目标

1.掌握if判断的格式
2.掌握if-else的格式
3.掌握if-elif-else的应用格式
4.掌握if嵌套的应用

四、本单元知识详讲

3.1 常见运算符

3.1.1 比较运算符 ★★★★★

python中的比较运算符如下表

运算符 描述 示例
== 检查两个操作数的值是否相等,如果是则条件变为真。 如a=3,b=3,则(a == b) 为 True
!= 检查两个操作数的值是否相等,如果值不相等,则条件变为真。 如a=1,b=3,则(a != b) 为 True
> 检查左操作数的值是否大于右操作数的值,如果是,则条件成立。 如a=7,b=3,则(a > b) 为 True
< 检查左操作数的值是否小于右操作数的值,如果是,则条件成立。 如a=7,b=3,则(a < b) 为 False
>= 检查左操作数的值是否大于或等于右操作数的值,如果是,则条件成立。 如a=3,b=3,则(a >= b) 为 True
<= 检查左操作数的值是否小于或等于右操作数的值,如果是,则条件成立。 如a=3,b=3,则(a <= b) 为 True
>>> ## 关系运算符
... 
>>> # == 等于:表示左右两个操作数是否相等,如果相等则整个表达式的值为 True;不相等则为False
... num1 = 15
>>> num2 = 20
>>> 
>>> print(num1 == num2)
False
>>> 
>>> # != 不等于
... print(num1 != num2)
True
>>> 
>>> # > 大于
... print(num1 > num2)
False
>>> 
>>> # < 小于
... print(num1 < num2)
True
>>> 
>>> # >= 大于等于: num1 大于 或者 等于 num2 ,条件都成立
... print(num1 >= num2)
False
>>> 
>>> # <= 小于等于: num1 小于 或者 等于 num2 ,条件都成立
... print(num1 <= num2)
True
>>> 
>>> if num1 >= num2:
...     print("条件成立!")
... 
>>>
3.1.2 逻辑运算符 ★★★★★
运算符 逻辑表达式 描述 实例
and x and y 布尔"与":如果 x 为 False,x and y 返回 False,否则它返回 y 的值。 True and False, 返回 False。
or x or y 布尔"或":如果 x 是 True,它返回 True,否则它返回 y 的值。 False or True, 返回 True。
not not x 布尔"非":如果 x 为 True,返回 False 。如果 x 为 False,它返回 True。 not True 返回 False, not False 返回 True
>>> ## 逻辑运算符
... 
>>> # and : 左右表达式都为True,整个表达式结果才为 True
... if (1 == 1) and (10 > 3):
...     print("条件成立!")
... 
条件成立!

>>> # or : 左右表达式有一个为True,整个表达式结果就为 True
... if (1 == 2) or (10 > 3):
...     print("条件成立!")
... 
条件成立!

>>> # not:将右边表达式的逻辑结果取反,Ture变为False,False变为True
... if not (1 == 2):
...     print("条件成立!")
... 
条件成立!>>>

3.2 判断语句的介绍

3.2.1 生活中的判断场景 ★★★

​ 火车站安检

在这里插入图片描述

上网吧

在这里插入图片描述

密码判断

在这里插入图片描述

3.2.2 开发中的判断场景 ★★★★★

小总结:

  • 如果某些条件满足,才能做某件事情;条件不满足时,则不能做,这就是所谓的判断。
  • 不仅生活中有,在软件开发中"判断"功能也经常会用到
3.2.3 if判断语句的格式介绍 ★★★★★
  • if语句是用来进行判断的,其使用格式如下:
if 要判断的条件:        
    条件成立时,要做的事情
  • demo1:(demo的中文意思:演示、案例)
age = 30

print("------if判断开始------")

if age >= 18:        
    print("我已经成年了")    

    print("------if判断结束------")
  • 运行结果:
------if判断开始------
我已经成年了
------if判断结束------
  • demo2:
age = 16

print("------if判断开始------")

if age >= 18:        
    print("我已经成年了")  

    print("------if判断结束------")

  • 运行结果:
------if判断开始------    
------if判断结束------

小总结:

  • 以上2个demo仅仅是age变量的值不一样,导致结果却不同;能够看得出if判断语句的作用:就是当满足一定条件时才会执行代码块语句,否则就不执行代码块语句。
  • 注意:代码的缩进为一个tab键,或者4个空格

3.3 if-else介绍

3.3.1 if-else使用场景介绍 ★★★★★

想一想:

在使用if的时候,它只能做到满足条件时要做的事情。那万一需要在不满足条件的时候,做某些事,该怎么办呢?

答:

使用 if-else

3.3.2 if-else案例演示 ★★★★★

if-else的使用格式如下:

if 条件:        
    满足条件时要做的事情1
    满足条件时要做的事情2
    满足条件时要做的事情3
    ...(省略)...    
else:        
    不满足条件时要做的事情1
    不满足条件时要做的事情2
    不满足条件时要做的事情3
    ...(省略)...

demo1

chePiao = 1 # 用1代表有车票,0代表没有车票

if chePiao == 1:        
	print("有车票,可以上火车")        
	print("终于可以见到Ta了,美滋滋~~~")    
else:        
	print("没有车票,不能上车")        
	print("亲爱的,那就下次见了"

结果1:有车票的情况

有车票,可以上火车    
终于可以见到Ta了,美滋滋~~~

结果2:没有车票的情况

没有车票,不能上车    
亲爱的,那就下次见了

3.4 elif使用介绍

3.4.1 elif 使用场景介绍 ★★★★★

想一想:

if能完成当xxx时做事情

if-else能完成当xxx时做事情1,否则做事情2

如果有这样一种情况:当xxx1满足时做事情1;当xxx1不满足、xxx2满足时做事情2;当xxx2不满足、xxx3满足时做事情3,那该怎么实现呢?

答:

使用elif

3.4.2 elif 案例演示 ★★★★★

elif的使用格式如下:

if xxx1:        
	事情1
elif xxx2:        
	事情2
elif xxx3:        
	事情3

说明:

  • 当xxx1满足时,执行事情1,然后整个if结束
  • 当xxx1不满足时,那么判断xxx2,如果xxx2满足,则执行事情2,然后整个if结束
  • 当xxx1不满足时,xxx2也不满足,如果xxx3满足,则执行事情3,然后整个if结束

demo:

score = 77

if score>=90 and score<=100:        
	print('本次考试,等级为A')    
elif score>=80 and score<90:        
	print('本次考试,等级为B')    
elif score>=70 and score<80:        
	print('本次考试,等级为C')    
elif score>=60 and score<70:        
	print('本次考试,等级为D')    
elif score>=0 and score<60:        
	print('本次考试,等级为E')

3.4.3 elif使用注意点 ★★★★★
  • 可以和else一起使用
if 性别为男性:       
	输出男性的体重       
	...   
elif 性别为女性:       
	输出女性的体重       
	...   
else:       
	第三种性别的体重       
	...

说明:

  • 当 “性别为男性” 满足时,执行 “输出男性的体重”的相关代码
  • 当 “性别为男性” 不满足时,如果 “性别为女性”满足,则执行 “输出女性的体重”的相关代码
  • 当 “性别为男性” 不满足,“性别为女性”也不满足,那么久默认执行else后面的代码,即 “第三种性别的体重”相关代码

elif必须和if一起使用,否则出错

else 一般用在最后,即所有条件都不满足时使用

3.5 if嵌套

3.5.1 if嵌套使用场景介绍 ★★★★★

通过学习if的基本用法,已经知道了

  • 当需要满足条件去做事情的这种情况需要使用if
  • 当满足条件时做事情A,不满足条件做事情B的这种情况使用if-else

想一想:

坐火车或者地铁的实际情况是:
先进行安检如果安检通过才会判断是否有车票,或者是先检查是否有车票之后才会进行安检;即实际的情况某个判断是再另外一个判断成立的基础上进行的,这样的情况该怎样解决呢?

答:

使用if嵌套

3.5.2 if嵌套格式介绍 ★★★★★
if 条件1:        
	满足条件1 做的事情1
	满足条件1 做的事情2

if 条件2:            
	满足条件2 做的事情1
	满足条件2 做的事情2

说明

  • 外层的if判断,也可以是if-else
  • 内层的if判断,也可以是if-else
  • 根据实际开发的情况,进行选择
3.5.3 if嵌套案例应用 ★★★★★

demo

chePiao = 1     # 用1代表有车票,0代表没有车票
daoLenght = 9     # 刀子的长度,单位为cm

if chePiao == 1:    
    print("有车票,可以进站")    
    if daoLenght < 10:        
        print("通过安检")        
        print("终于可以见到Ta了,美滋滋~~~")    
    else:        
        print("没有通过安检")        
        print("刀子的长度超过规定,等待警察处理...")
else:    
    print("没有车票,不能进站")    
    print("亲爱的,那就下次见了")

结果1:chePiao = 1;daoLenght = 9

有车票,可以进站    
通过安检    
终于可以见到Ta了,美滋滋~~~

结果2:chePiao = 1;daoLenght = 20

有车票,可以进站    
没有通过安检    
刀子的长度超过规定,等待警察处理...

结果3:chePiao = 0;daoLenght = 9

没有车票,不能进站    
亲爱的,那就下次见了

结果4:chePiao = 0;daoLenght = 20

没有车票,不能进站    
亲爱的,那就下次见了

想一想:为什么结果3和结果4相同???

五、本单元知识总结

1.if判断语句
2.多项选择判断
3.if嵌套


六、作业安排

(Ⅰ)课后作业

1.完成练习手册第三单元,选择题,填空题,简答题(1,2,3,4)、技能题(1,2,3,4)
2.完成教材第3章节,课后习题(1,2)

(Ⅲ)预习作业

1.预习第四单元,循环知识点
2.预习教材,循环知识点

预习附录:
1.参见教材:第三章<66,76>页

第四单元 循环语句和跳转语句

一、昨日知识点回顾

1. 判断语句格式是什么?
2. if-else使用在哪些场景?
3. elif使用注意哪些事项?
4. if嵌套格式是什么?

二、本单元知识点概述

(Ⅰ)指定教材

​ 引用自指定教材《零基础学Python全彩版》,第3章 流程控制语句,页码区间<66,78>页

(Ⅱ)知识点概述

在这里插入图片描述

(Ⅲ)教学时长

​ 共4课时,180分钟


三、本单元教学目标

(Ⅰ)重点知识目标

1.while循环格式及while循环嵌套
2.for循环格式及for循环嵌套

(Ⅱ)能力目标

1.掌握while循环及无限循环的使用格式
2.掌握while循环嵌套的格式
3.掌握for循环的格式
4.掌握for循环嵌套的格式
5.掌握breakcontinue的用法

四、本单元知识详讲

4.1 循环介绍

4.1.1 生活中的循环场景 ★★

跑道

在这里插入图片描述

风扇

在这里插入图片描述

CF加特林

在这里插入图片描述

4.1.2 软件开发中的循环场景 ★★★

跟媳妇承认错误,说一万遍"媳妇儿,我错了"

print("媳妇儿,我错了")    
print("媳妇儿,我错了")    
print("媳妇儿,我错了")    
...(还有99997)...

使用循环语句一句话搞定

i = 0
while i < 10000:        
	print("媳妇儿,我错了")        
	i += 1

总结

while和if的用法基本类似,区别在于:if 条件成立,则执行一次; while 条件成立,则重复执行,直到条件不成立为止。

一般情况下,需要多次重复执行的代码,都可以用循环的方式来完成

循环不是必须要使用的,但是为了提高代码的重复使用率,所以有经验的开发者都会采用循环

4.2 while循环的介绍及案例

4.2.1 while循环格式介绍 ★★★★★

while循环格式

while 条件:        
    条件满足时,做的事情1
    条件满足时,做的事情2
    条件满足时,做的事情3
    ...(省略)...

demo

i = 0
while i < 5:        
	print("当前是第%d次执行循环" % (i + 1))        
	i+=1

效果如下

当前是第1次执行循环    
i=0    
当前是第2次执行循环    
i=1    
当前是第3次执行循环    
i=2    
当前是第4次执行循环    
i=3    
当前是第5次执行循环    
i=4
4.2.2 while循环应用案例之计算1–100之间的整数和 ★★★★
i = 1
sum = 0
while i <= 100:    
    sum = sum + i    
    i += 1
print("1~100的累积和为:%d" % sum)

效果如下

1~100的累积和为:5050

4.2.3 while循环应用案例之计算1–100之间的偶数和 ★★ ★★
i = 1
sum = 0
while i <= 100:    
    if i % 2 == 0:        
    sum = sum + i    
    i+=1
print("1~100的累积和为:%d" % sum)

效果如下

1~100的累积和为:2550

4.2.4 while循环之无限循环(死循环)及小明拨电话案例讲解 ★★★★

循环循环是指重复执行一段代码若干次,为什么要有循环? 因为循环可以避免大量的代码重复。 死循环当一个循环可以执行无限次,也就是没有终止条件,我们称这个循环是死循环。用python实现一个死循环非常简单

案例

# 小明为他的手机设定了自动拨号 ? 
# 按 1:拨爸爸的号 按 2:拨妈妈的号 按 3:拨爷爷的号 按 4:拨奶奶的号
while True:
    phone = input(请输入:)
    if phone=="1":
        print("拨爸爸的号")
    elif phone=="2":
        print("拨妈妈的号")
    elif phone=="3":
        print("拨爷爷的号")
    elif phone=="4":
        print("拨奶奶的号")
    else:
        print("您拨的号不存在")

4.3 while循环嵌套介绍及案例

4.3.1 while循环应用案例之打印正三角 ★★★★★
i = 1
while i <= 5:    
    j = 1
    while j <= i:        
        print("* ", end = '')        
        j += 1
    print("\n")    
    i += 1

效果如下

*    
* *    
* * *    
* * * *    
* * * * *

4.3.2 while循环应用案例之打印倒三角 ★★★★★
i = 1
while i <= 5:    
    j = 5
    while j >= i:        
        print("* ", end = '')        
        j -= 1
    print("\n")    
    i += 1

效果如下

* * * * *    
* * * *   
* * *     
* *     
* 

4.3.3 while循环应用案例之打印九九乘法表 ★★★★★
i = 1
while i<=9:    
    j=1
    while j<=i:        
        print("%d*%d=%-2d " % (j, i, i*j), end = '')        
        j+=1
    print()    
	i+=1

效果如下

1*1=1  
1*2=2  2*2=4  
1*3=3  2*3=6  3*3=9  
1*4=4  2*4=8  3*4=12 4*4=16 
1*5=5  2*5=10 3*5=15 4*5=20 5*5=25 
1*6=6  2*6=12 3*6=18 4*6=24 5*6=30 6*6=36 
1*7=7  2*7=14 3*7=21 4*7=28 5*7=35 6*7=42 7*7=49 
1*8=8  2*8=16 3*8=24 4*8=32 5*8=40 6*8=48 7*8=56 8*8=64 
1*9=9  2*9=18 3*9=27 4*9=36 5*9=45 6*9=54 7*9=63 8*9=72 9*9=81

4.4 for循环介绍及案例

4.4.1 for循环的格式 ★★★★★

像while循环一样,for可以完成循环的功能。

在Python中 for循环可以遍历任何序列的项目,如一个列表或者一个字符串等。

for 临时变量 in 列表或者字符串等可迭代对象:    
    循环满足条件时执行的代码

4.4.2 for循环应用案例之遍历字符串 ★★★★
name = 'beijing'
for x in name:    
    print(x)

效果如下

b
e
i
j
i
n
g

4.4.3 for循环应用案例之遍历列表 ★★★★★
name=["安其拉","李白","鲁班","后裔"]
for x in name:
	print(x)

效果如下

安其拉
李白
鲁班
后裔

4.4.4 for循环应用案例之range()函数 ★★★★★
# range(5) 在python高级班中进行讲解,会牵扯到迭代器的知识,
# 作为刚开始学习python的我们,此阶段仅仅知道range(5)表示可以循环5次即可
for i in range(5):    
    print(i)
'''
效果等同于 while 循环的:
i = 0
while i < 5:    
    print(i)    
    i += 1
'''

效果如下

0
1
2
3
4

4.5 for循环嵌套及案例

4.5.1 for循环嵌套格式介绍 ★★★★★
for 临时变量 in 列表或者字符串等可迭代对象:    
    for 临时变量 in 列表或者字符串等可迭代对象:

4.5.2 for循环嵌套应用案例之九九乘法表 ★★★★
for i in range(1,10):
    for j in range(1,i+1):
        print("%d*%d=%-2d " % (j, i, i * j), end='')
    print()

效果如下

1*1=1  
1*2=2  2*2=4  
1*3=3  2*3=6  3*3=9  
1*4=4  2*4=8  3*4=12 4*4=16 
1*5=5  2*5=10 3*5=15 4*5=20 5*5=25 
1*6=6  2*6=12 3*6=18 4*6=24 5*6=30 6*6=36 
1*7=7  2*7=14 3*7=21 4*7=28 5*7=35 6*7=42 7*7=49 
1*8=8  2*8=16 3*8=24 4*8=32 5*8=40 6*8=48 7*8=56 8*8=64 
1*9=9  2*9=18 3*9=27 4*9=36 5*9=45 6*9=54 7*9=63 8*9=72 9*9=81 

4.6 跳转语句break和continue

4.6.1 break介绍 ★★★★★

break:跳出循环,不在执行

Python break语句,就像在C语言中,打破了最小封闭for或while循环。

break语句用来终止循环语句,即循环条件没有False条件或者序列还没被完全递归完,也会停止执行循环语句。

break语句用在while和for循环中。

如果您使用嵌套循环,break语句将停止执行最深层的循环,并开始执行下一行代码

4.6.2 for循环break应用案例 ★★★★★
name = 'beijing'
for x in name:      
        if x == 'e':         
           break
    print(x)
else:    
    print("==for循环过程中,如果没有执行break退出,则执行本语句==")

效果如下

b

总结

break的作用:立刻结束break所在的循环

4.6.3 while循环break应用案例 ★★★★★
i = 0
while i<5:    
    i +=1   
    if i==3:        
        break
    print(i)
else:    
    print("==while循环过程中,如果没有执行break退出,则执行本语句==")

效果如下

1
2

4.6.4 continue介绍 ★★★★★

continue:跳出本次循环,执行下一次

Python continue 语句跳出本次循环,而break跳出整个循环。

continue 语句用来告诉Python跳过当前循环的剩余语句,然后继续进行下一轮循环。

continue语句用在while和for循环中。

4.6.5 for循环continue应用案例 ★★★★★
name = 'beijing'
for x in name:  
    print('----') 
    if x == 'e':         
        continue
    print(x)

效果如下

----
b
----
----
i
----
j
----
i
----
n
----
g
----

4.6.6 while循环continue应用案例 ★★★★★
i = 0
while i<5:    
    i = i+1
    print('----')    
    if i==3:        
        continue
    print(i)

效果如下

----
1
----
2
----
----
4
----
5

总结

continue的作用:用来结束本次循环,紧接着执行下一次的循环

4.6.7 break和continue的区别 ★★★★★

break的作用:满足条件时,立刻结束break所在的循环

continue的作用:当满足条件时,用来结束本次循环,紧接着执行下一次的循环

注意点:

  1. break/continue只能用在循环中,除此以外不能单独使用
  2. break/continue在嵌套循环中,只对最近的一层循环起作用

五、本单元知识总结

1. for循环格式及嵌套
2. while循环格式及嵌套
3. breakcontinue用法及区别


六、作业安排

(Ⅰ)课后作业

1.完成练习手册第四单元,选择题,填空题,简答题(1,2,4,5)、技能题(123

(Ⅲ)预习作业

1.预习第五单元,常见数据类型之字符串常见操作
2.预习教材,序列的应用

预习附录:
1.参见教材:第四章<80,83>

第五单元 常见数据类型之字符串常见操作

一、昨日知识点回顾

1. while循环及无限循环的使用格式是什么?
2. while循环嵌套的格式是什么?
3. for循环的格式是什么?
4. for循环嵌套的格式是什么?
5. break和continue如何使用?

二、本单元知识点概述

(Ⅰ)指定教材

​ 引用自指定教材《零基础学Python全彩版》,第2章 Python语言基础,页码区间<128,141>页

(Ⅱ)知识点概述

在这里插入图片描述

(Ⅲ)教学时长

​ 共4课时,180分钟


三、本单元教学目标

(Ⅰ)重点知识目标

1.字符串的格式
2.字符串的输入与输出
3.通过下标索引获取字符
4.字符串的切片
5.常用的字符串操作方法

(Ⅱ)能力目标

1.掌握字符串的格式
2.掌握字符串的输入与输出
3.掌握通过下标索引获取字符
4.掌握字符串的切片
5.掌握常用的字符串操作方法

四、本单元知识详讲

5.1 字符串的介绍

5.1.1 字符串的格式介绍 ★★★★★

如下定义的变量a,存储的是数字类型的值

 num = 100

如下定义的变量b,存储的是字符串类型的值

 str_1 = "hello usian.cn"
 或者
 str_2 = 'hello usian.cn'

小总结:

  • 双引号或者单引号中的数据,就是字符串

5.2 字符串的输入与输出

5.2.1 字符串的输入 ★★★★

之前在学习input的时候,通过它能够完成从键盘获取数据,然后保存到指定的变量中;

注意:input获取的数据,都以字符串的方式进行保存,即使输入的是数字,那么也是以字符串方式保存

demo:

    userName = input('请输入用户名:')
    print("用户名为:%s" % userName)

    password = input('请输入密码:')
    print("密码为:%s" % password)

结果:(根据输入的不同结果也不同)

    请输入用户名: usian

    用户名为: usian
    请输入密码:haohaoxuexitiantianxiangshang
    密码为: haohaoxuexitiantianxiangshang
5.2.2 字符串的输出 ★★★★

格式化输出

    name = '犇哥'
    position = '讲师'
    address = '北京市'

    print('--------------------------------------------------')
    print("姓名:%s" % name)
    print("职位:%s" % position)
    print("公司地址:%s" % address)
    print('--------------------------------------------------')

结果:

    ---------------------------------------
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值