首页 > 编程语言 >02python

02python

时间:2024-08-31 15:15:12浏览次数:11  
标签:语句 10 num 02python range 循环 print

1.布尔类型和比较运算符
1.1 布尔(bool)类型
布尔(bool)表达现实生活中的逻辑,即真和假:

True 表示真;
False 表示假。
True本质上是一个数字记作1,False记作0

1.1.1 布尔类型字面量
True 表示真(是、肯定)
False 表示假(否、否定)
1.1.2 定义变量存储布尔类型数据
变量名称 = 布尔类型字面量

布尔类型不仅可以自行定义,同时也可以通过计算得来,也就是使用比较运算符进行运算得到布尔类型的结果。

1.2 比较运算符
运算符 描述
== 判断内容是否相等,满足为True,不满足为False
!= 判断内容是否不相等,满足为True,不满足为False
> 判断运算符左侧内容是否大于右侧,满足为True,不满足为False
< 判断运算符左侧内容是否小于右侧,满足为True,不满足为False
>= 判断运算符左侧内容是否大于等于右侧,满足为True,不满足为False
<= 判断运算符左侧内容是否小于等于右侧,满足为True,不满足为False
1.3 代码练习
# 定义变量存储布尔类型的数据
bool_1 = True
bool_2 = False
print(f"bool_1变量的内容是:{bool_1},类型是:{type(bool_1)}")
print(f"bool_2变量的内容是:{bool_2},类型是:{type(bool_2)}")

# 比较运算符的使用
# == , != , > , < , >= , <=
# 比较内容是否相等
num1 = 10
num2 = 10
print(f"{num1} == {num2}的结果是:{num1 == num2}")
num3 = 15
print(f"{num1} != {num3}的结果是:{num1 == num3}")

name1 = "HeyStar"
name2 = "HeyStar"
print(f"{name1} == {name2}的结果是:{name1 == name2}")

name3 = "heystar"
print(f"{name1} != {name3}的结果是:{name1 == name3}")

# 比较内容大于小于
num1 = 10
num2 = 5
print(f"{num1} > {num2}的结果是:{num1 > num2}")
print(f"{num1} < {num2}的结果是:{num1 < num2}")

num3 = 10
print(f"{num1} >= {num3}的结果是:{num1 >= num3}")
print(f"{num1} <= {num3}的结果是:{num1 <= num3}")

2.if语句的基本格式
2.1 if判断语句
程序中的判断语法

if 要判断的条件:
条件成立时,要做的事情
2.2 代码练习
age = input("请输入你的年龄:")

if int(age) >= 18:
print("恭喜你:")
print("成年了!")

print("时间过的真快")

其中int(age),由于input输入后,得到的是str类型,需要强转为int类型

3.if else语句
3.1 if else判断语句
程序中的判断语法

if 要判断的条件:
满足条件时要做的事情1
满足条件时要做的事情2
满足条件时要做的事情3
...(省略)...
else:
不满足条件时要做的事情1
不满足条件时要做的事情2
不满足条件时要做的事情3
...(省略)...
3.2 代码练习
动物园1:
通过input语句获取键盘输入的身高
判断身高是否超过120cm,并通过print给出提示信息。

print("欢迎来到HeyStar动物园")
high = input("请输入你的身高(cm):")

if int(high) > 120:
print("您的身高超出120cm,游玩时需要购票10元。")
else:
print("您的身高未超出120cm,可以免费游玩。")

print("祝您游玩愉快!")

输出 :


4. if elif else语句
4.1 if elif else语句
程序中的判断语法:

if 条件1:
条件1满足应做的事情1
条件1满足应做的事情2
......
elif 条件2:
条件2满足应做的事情1
条件2满足应做的事情2
......
elif 条件3:
条件3满足应做的事情1
条件3满足应做的事情2
......
else:
所有条件都不满足应做的事情1
所有条件都不满足应做的事情2
......
4.1.2 代码练习
猜猜心里数字
1.定义一个变量,数字类型,内容随意。
2.基于input语句输入猜想的数字,通过if和多次elif的组合,判断猜想数字是否和心里数字一致。

numbers = 5

if int(input("请输入第一次猜测的数字:")) == numbers:
print("恭喜你,第一次就猜对了! o(* ̄▽ ̄*)ブ")
elif int(input("猜错了,还有两次机会,请输入第二次猜测的数字:")) == numbers:
print("恭喜你猜对了! o(* ̄▽ ̄*)ブ")
elif int(input("猜错了,你只剩一次机会了,请输入最后一次猜测的数字:")) == numbers:
print("恭喜你最后一次猜对了! o(* ̄▽ ̄*)ブ")
else:
print("一次都没有猜对. (T_T)")

输出结果:


5. 判断语句的嵌套
5.1 基础语法格式:
if 条件1:
满足条件1做的事情1
满足条件1做的事情2

if 条件2
满足条件2做的事情1
满足条件2做的事情2
如上图,第二个if,属于第一个if中,只有第一个if满足条件,才会执行第二个if

嵌套的关键点,在于空格缩进
通过空格缩进,来决定语句之间的:层次关系

5.2 代码练习
动物园2
通过input语句获取键盘输入的身高、会员级别
判断身高是否超过120cm,判断会员级别,并通过print给出提示信息。

print("欢迎来到HeyStar动物园")
high = input("请输入你的身高(cm):")

if int(high) > 120:
print("您的身高超出120cm,游玩时需要购票10元。")
if int(input("请输入您的会员级别:")) >= 3:
print("尊敬的会员:")
print(" 您可以免费游玩!")
else:
print("尊敬的游客:")
print(" 请您购票后,继续游玩")
else:
print("您的身高未超出120cm,可以免费游玩。")

print("祝您游玩愉快!o(* ̄▽ ̄*)ブ")

输出结果:


6.判断语句实战案例
定义一个数字(1~10,随机生成),通过3次判断来猜出数字。

要求:
1.数字随机生成,范围1~10
2.有3次机会,通过3层嵌套判断实现
3.每次猜不中,提示大了或小了

提示
通过以下代码,可以定义一个变量num,变量内存储随机数字

import random
num = random.randint(1,10)
代码
import random
numbers = random.randint(1,10)

num = int(input("请输入第一次猜测的数字:"))

if num == numbers:
print("恭喜你,第一次就猜对了")
else:
if num > numbers:
print("猜测数字过大,猜小一点。")
else:
print("猜测数字过小,猜大一点。")

num = int(input("请输入第二次猜测的数字:"))

if num == numbers:
print("恭喜你,第二次就猜对了")
else:
if num > numbers:
print("猜测数字过大,猜小一点。")
else:
print("猜测数字过小,猜大一点。")

num = int(input("请输入第三次猜测的数字:"))

if num == numbers:
print("恭喜你猜对了")
else:
print("没有猜对,次数已用完")

循环同样是程序最基础最核心的逻辑功能!
循环的两种基本元素:条件、操作

7. while 循环
7.1 while的基础语法
while 条件:
条件满足时,做的事情1
条件满足时,做的事情2
条件满足时,做的事情3
...(省略)...
7.1.1 代码练习
输出100遍"Hello World!"

i = 0
while i < 100:
print("Hello World!")
i += 1

7.2 while循环的注意事项
while的条件需要得到布尔类型,True表示继续循环,False表示结束循环
需要设置循环终止的条件,如i += 1配合i<100,就能确保100次后停止,否则将无限循环
空格缩进和if判断一样,都需要设置
7.3 使用while循环,计算1~100的和
代码:

i = 1
num_sum = 0

while i <= 100:
num_sum += i
i += 1

print(num_sum)

输出:5050

7.4 while循环的基础案例————猜数字
设置一个范围1-100的随机整数变量,通过while循环,配合input语句,判断输入的数字是否等于随机数

无限次机会,直到猜中为止
每一次猜不中,会提示大了或小了
猜完数字后,提示猜了几次
提示:
无限次机会,终止条件不适合用数字累加来判断

可以考虑布尔类型本身(True or False)
需要提示几次猜中,就需要提供数字累加功能

随机数可以使用:

import random
num = random.randint(1,10)
代码:
import random

num = random.randint(1, 100)

guess_num = 0
count = 0
while guess_num != num:
count += 1
guess_num = int(input("请输入您猜的数字:"))
if guess_num < num:
print("猜测过小,再猜一个吧。")
elif guess_num > num:
print("猜测过大,再猜一个吧。")

print(f"第 {count} 次,猜对,数字为:{num}")

7.5 while循环的嵌套应用
7.5.1 基本格式
while 条件1:
条件1满足时,做的事情1
条件1满足时,做的事情2
条件1满足时,做的事情3
...(省略)...

while 条件2:
条件2满足时,做的事情1
条件2满足时,做的事情2
条件2满足时,做的事情3
...(省略)...
7.5.2 代码练习
输出100遍Hello,1000遍world

i = 0
while i < 100:
print("Hello")

j = 0
while j < 10:
print(" World")
j += 1

i += 1
7.5.3 注意事项
通判断语句的嵌套一样,循环语句的嵌套,要注意空格缩进

基于空格缩进来决定层次关系
注意条件的设置,避免出现无限循环(除非真的需要无限循环)

7.5 while循环的嵌套案例
7.5.1 补充知识
7.5.1.1 print输出不换行
默认的print语句输出内容会自动换行
使用以下语法可以将print输出不换行

print("Hello",end='')
print("World",end='')
7.5.1.2 制表符\t
在字符串中,有一个特殊的符号:\t,效果等同于在键盘上按下tab键
可以将多行字符串进行对齐

7.5.2 练习案例-打印九九乘法表
代码:

i = 1
while i < 10:
j = 1
while j <= i:
print(f"{j}×{i}={j * i}\t", end='')
j += 1
print("")
i += 1

输出结果:


8. for循环
8.1 for循环的基础语法
除了while循环语句外,Python同样提供了for循环语句。
两者能完成的功能基本差不多,但仍有一些区别:

while循环的循环条件是自定义的,自行控制循环条件
for循环是一种 "轮询" 机制,是对一批内容进行 "逐个处理"
8.1.1 程序中的循环:
for 临时变量 in 待处理数据集:
循环满足条件时执行的代码
8.1.2 循环字符串
# 定义字符串name
name = "HeyStar"
# for循环处理字符串
for x in name:
print(x)

for循环是将字符串的内容:依次取出
所以,for循环也被称为:遍历循环

8.1.3 注意点
同while循环不同,for循环是无法定义循环条件的。
只能从被处理的数据集中,依次取出内容进行处理。
所以,理论上讲,Python的for循环无法构建无限循环(被处理的数据集不可能无限大)

8.1.4 for循环案例
数一数有几个a
定义字符串变量name,内容为:"itheima is a brand of itcast"通过for循环,遍历此字符串,统计有多少个英文字母: "a"

name = "itheima is a brand of itcast"

count = 0
for x in name:
if x == 'a':
count += 1

print(f"在\"{name}\"中,共有{count}个\"a\"")
输出结果:


8.2 range语句
语法中:待处理数据集,严格来说,称之为:序列类型
序列类型指,其内容可以一个个依次取出的一种类型,包括:

字符串
列表
元组

for循环语句,本质上是遍历:序列类型。
我们可以通过学习range语句,获得一个简单的数字序列。

8.2.1 语法1
range(num)
获取一个从0开始,到num结束的数字序列(不含num本身)
如range(5)取得的数据是:[0,1,2,3,4]

8.2.2 语法2:
range(num1,num2)
获得一个从num1开始,到num2结束的数字序列(不含num2本身)如,range(5,10)取得的数据是:[5,6,7,8,9]

8.2.3 语法3:
range(num1, num2, step)
获得一个从num1开始,到num2结束的数字序列(不含num2本身)数字之间的步长,以step为准( step默认为1)
如,range(5,10,2)取得的数据是:[5,7,9]

8.2.4 代码练习
# range语法1 range(num)
for x in range(10):
print(x, end=' ') # 打印0~9
print()

# range语法2 range(num1,num2)
for x in range(5, 10):
print(x, end=' ') # 从5开始,到10结束(不包含10本身)的一个数字序列
print()

# range语法3 range(num1,num2,step)
for x in range(5, 10, 2):
print(x, end=' ') # 从5开始,到10结束(不包含10本身)的一个数字序列,数字之间的间隔是2
print()

输出结果:


8.3 range语法案例
有几个偶数
定义一个数字变量numt,内容随意
并使用range()语句,获取从1到num的序列,使用for循环遍历它。在遍历的过程中,统计有多少偶数出现

代码
count = 0
for x in range(1, 101):
if x % 2 == 0:
count += 1
print(f"在1~100中,有{count}个偶数!")

输出结果
8.4 变量作用域
临时变量,在编程规范上,作用范围(作用域),只限定在for循环内部
如果在for循环外部访问临时变量:

实际上是可以访问到的
在编程规范上,是不允许、不建议这么做的
8.5 for循环的嵌套应用
程序中的嵌套for循环

for临时变量in待处理数据集(序列)∶
循环满足条件应做的事情1
循环满足条件应做的事情2
循环满足条件应做的事情N
...
for临时变量in待处理数据集(序列):
循环满足条件应做的事情1
循环满足条件应做的事情2
循环满足条件应做的事情N
8.5.1 代码练习
for i in range(1,100):
print(f"今天是学习Python的第{i}天:")
for j in range(1,10):
print(f"第{i}天学习的第{j}个语法,真简单!")
j += 1
i += 1

8.5.2 注意点:
需要注意缩进,嵌套for循环同样通过缩进确定层次关系
for循环和while循环可以相互嵌套使用
8.6 for循环案例-打印九九乘法表
代码
for i in range(1, 10):
j = 1
for j in range(1, i+1):
print(f"{j}×{i}={i * j}\t", end=' ')
print()

输出结果
8.7 continue和break
无论是while循环或是for循环,都是重复性的执行特定操作。在这个重复的过程中,会出现一些其它情况让我们不得不:

暂时跳过某次循环,直接进行下一次
提前退出循环,不在继续
continue和break关键字,用以对循环进行临时跳过和直接结束。

8.7.1 continue
continue关键字用于:中断本次循环,直接进入下一次循环
continue可以用于:for循环和while循环,效果一致

for i in range(1,100):
语句1
continue
语句2
以上的代码中:

在循环内,遇到continue就结束当次循环,进行下一次
所以,语句2是不会执行的。
应用场景:
在循环中,因某些原因,临时结束本次循环。

嵌套引用:
continue关键字只可以控制:它所在的循环临时中断

for i in range(1,100):
语句1
for j in range(1,100):
语句2
continue
语句3

语句4
在以上的代码中,语句3无法执行,但语句4可以执行。

8.7.2 break
break关键字用于:直接结束循环
break可以用于:for循环和while循环,效果一致

for i in range(1,100):
语句1
break
语句2

语句3
以上的代码中:

在循环内,遇到break就结束循环了
所以,执行了语句1后,直接执行语句3了
嵌套引用:
break关键字同样只可以控制:它所在的循环结束

for i in range(1,100):
语句1
for j in range(1,100):
语句2
break
语句3

语句4
在以上的代码中,输出1遍语句1时,输出语句2,100次,再输出1次语句4

8.7.3 注意点
continue和break,在for和while循环中作用一致
在嵌套循环中,只能作用在所在的循环上,无法对上层循环起作用
9.循环综合案例
某公司,账户余额有1W元,给20名员工发工资。

员工编号从1到20,从编号1开始。依次领取工资,每人可领取1000元
领工资时,财务判断员工的绩效分(1-10)(随机生成),如果低于5,不发工资,换下一位
如果工资发完了,结束发工资。
提示:

使用循环对员工依次发放工资
continue用于跳过员工,break直接结束发工资
随机数可以用:
import random
num = random.randint(1,10)
代码
import random

balance = 10000 # 账户余额

for i in range(1, 20):
num = random.randint(1, 10) # 绩效分
if num < 5:
print(f"员工{i},绩效分{num},低于5,不发工资,下一位")
else:
balance -= 1000
print(f"向员工{i}发放1000元,账户余额剩余{balance}元")

if balance == 0:
print("工资发完了,下个月再领取吧。")
break

运行结果图
---------------------
著作权归作者所有。
商业转载请联系作者获得授权,非商业转载请注明出处。
作者:HeyStar
源地址:https://www.cnblogs.com/heystar/p/17602330.html
来源:博客园cnblogs
© 版权声明:本文为博主原创文章,转载请附上博文链接!

标签:语句,10,num,02python,range,循环,print
From: https://www.cnblogs.com/Lyh3012648079/p/18390342

相关文章

  • day02Python的初识
    第二节编程语言与Python介绍【一】引言基于上一节所学,有了计算机硬件,再在硬件之上安装好操作系统,我们就有了一个应用程序的运行平台,我们接下来的任务就是学习如何使用某款编程语言来开发应用程序。【二】编程语言分类【1】机器语言(1.1)什么是机器语言机器语言是站在计算......
  • 02Python输入输出
    输入输出print()函数sep=''数据之间一空格分割,默认是空格end='\n'在打印后会额外的加一个数据,默认是换行符print("hello","world") print("hello","worl......
  • 02python快速上手
    这一篇是环境准备,主要是说明如何安装Python和运行交互式环境。安装和运行交互式解析器如果你使用的是MacOS和Linux/UNIX机器的话,大部分都默认安装了Python,不过需要注意的......