快速导航栏
一、格式化输出
1、%占位符输出
通过用 %占位符达到输出相关变量的结果
输出格式:
# 需求: 用变量记录两个整数,计算两个数的和,格式化输出: a+b的结果是:x
a = 1
b = 2
he = a + b
print('%d+%d的结果是:%d' % (a, b, he)) # 1+2的结果是:3
# 需求: 直接使用表达式进行格式化输出
a = 10
b = 20
print('%d+%d的结果是:%d' % (a, b, a + b)) # 10+20的结果是:30
这样输出的缺点很明显,不同的变量类型就需要用不同的占位符来占位,下面是几种常见的占位符:
占位符 | 替换内容 |
---|---|
%d | 整数 |
%f | 浮点数 |
%s | 字符串 |
%x | 十六进制整数 |
2、用,或者+直接输出
输出格式:
print('内容1',变量1,'内容2','内容3',变量2) # 逗号会默认为空格输出
print('内容1'+变量1+'内容2'+'内容3'+变量2) # 局限性较大
注意:用+连接各内容时,只能连接同类型可以相加减的内容或者变量,如字符串加字符串,数字加数字等
示例:
# 需求: 用变量记录两个整数,计算两个数的和,格式化输出: a+b的结果是:x
a = 1
b = 2
he = a + b
print(a, '+', b, '的结果是:', he) # 1 + 2 的结果是: 3
# 需求: 直接使用表达式进行格式化输出
a = 10
b = 20
print(a, '+', b, '的结果是:',a + b) # 10 + 20 的结果是: 30
3、format格式化输出
输出格式:
print(f"...{变量或者表达式}...")
输出示例:
# 需求: 用2个变量记录你的姓名和年龄,格式化输出: xx的年龄是xx岁
name = '大帅哥'
age = 18
print(f'{name}的年龄是{age}岁') # 大帅哥的年龄是18岁
# 需求: 用变量记录两个整数,计算两个数的和,格式化输出: a+b的结果是:x
a = 1
b = 2
he = a + b
print(f'{a} + {b}的结果是:{he}') # 1 + 2的结果是:3
# 需求: 直接使用表达式进行格式化输出
a = 10
b = 20
print(f'{a} + {b}的结果是:{a + b}') # 10 + 20的结果是:30
那如何控制小数点保留位数呢?
此种方法也可以格式化浮点数,方法如下:
print(f'{变量:.nf}') # n代表保留几位小数
示例:
# 用a + b 并保留两位小数
a = 3.123
b = 1.435
print(f'{a} + {b} = {a + b:.2f}') # 3.123 + 1.435 = 4.56
二、input函数
注意:在python3之前,input() 和 raw_input() 这两个函数均能接收字符串 ,但raw_input() 直接读取控制台的输入(任何类型的输入它都可以接收)。而对于 input() ,它希望能够读取一个合法的 python 表达式,即你输入字符串的时候必须使用引号将它括起来,否则它会引发一个 SyntaxError类型的报错。在当时,除非对 input() 有特别需要,否则一般情况下我们都是推荐使用 raw_input() 来与用户交互。
但是!!!
注意:python3 里 input() 默认接收到的是 str 类型。
此后,raw_input()函数被移除,只保留了input()
input()函数相关知识点:
a、input函数功能: 获取用户输入的内容
b、binput函数格式: 变量接收用户输入的数据 = input(给用户的提示语)
c、cinput步骤拆分: 1.先打印括号中给用户的提示语 2.用户输入并且使用input获取到数据 3.变量接收对应数据
d、注意事项: input默认接收的数据都是字符串类型 ,如果想要用于计算需要使用int()或者float()做类型转换
使用示例:
# 需求1: 已知用户名是admin,密码是123456,要求提示用户输入用户名和密码信息,后台获取到用户的信息
# 1.在input中给用户提示
# 2.让用户输入信息,并且后台接收对应信息
name = input('请您输入用户名:')
pwd = input('请您输入密码:')
# 3.让用户确认下信息
print(f'您输入的用户名{name},密码是是:{pwd}')
print('-------------------------------------')
# 需求2: 要求编写一个程序计算购买水果的总价
# 注意: input接收的数据都是字符串类型
# 获取水果的单价
money = float(input('请您输入水果的单价:'))
# 获取水果的重量
weight = float(input('请您输入水果的重量:'))
# 计算并打印出水果的总价
all_money = money * weight
print(f'水果的总价是:{all_money}')
三、布尔类型和比较运算符
1、bool类型
布尔类型: bool布尔值只有两个True和False
得到布尔值方式:
方式1: 直接赋值
方式2: 通过比较获取布尔结果
示例:
# 布尔值可以直接赋值
a = True
print(a) # True
# 布尔值可以通过比较得到(比较运算符在下一小节详细介绍)
print(10 == 8) # False
print(10 != 8) # True
print(10 >= 8) # True
print(10 > 8) # True
print(10 < 8) # False
print(10 <= 8) # False
# 注意: 两个字符串比较内容是否相同可以用==
print('python' == 'python') # True
print('大数据' == '大数据') # True
2、比较运算符
常见的比较运算符:
运算符 | 描述 | 实例 |
---|---|---|
== | 等于:比较对象是否相等 | (a == b) 返回 False。 |
!= | 不等于:比较两个对象是否不相等 | (a != b) 返回 True。 |
<> | 不等于:比较两个对象是否不相等。python3 已废弃。 | (a <> b) 返回 True。这个运算符类似 != 。 |
> | 大于:返回x是否大于y | (a > b) 返回 False。 |
< | 小于:返回x是否小于y。所有比较运算符返回1表示真,返回0表示假。这分别与特殊的变量 True 和 False 等价。 | (a < b) 返回 True。 |
>= | 大于等于:返回x是否大于等于y。 | (a >= b) 返回 False。 |
<= | 小于等于:返回x是否小于等于y。 | (a <= b) 返回 True。 |
比较运算符演示:
a = 21
b = 10
c = 0
if a == b:
print("1 - a 等于 b")
else:
print("1 - a 不等于 b")
if a != b:
print("2 - a 不等于 b")
else:
print("2 - a 等于 b")
if a <> b: # 此种运算符已被移除,其功能与!=完全一致
print("3 - a 不等于 b")
else:
print("3 - a 等于 b")
if a < b:
print("4 - a 小于 b")
else:
print("4 - a 大于等于 b")
if a > b:
print("5 - a 大于 b")
else:
print("5 - a 小于等于 b")
# 修改变量 a 和 b 的值
a = 5
b = 20
if a <= b:
print("6 - a 小于等于 b")
else:
print("6 - a 大于 b")
if b >= a:
print("7 - b 大于等于 a")
else:
print("7 - b 小于 a")
"""输出结果如下
1 - a 不等于 b
2 - a 不等于 b
3 - a 不等于 b
4 - a 大于等于 b
5 - a 大于 b
6 - a 小于等于 b
7 - b 大于等于 a
"""
四、程序执行特点
默认基础程序都是从上往下依次按照顺序执行
示例:
# 顺序执行,从上往下,每一行依次执行
print('程序开始...')
print('我已经成年了...')
print('程序结束...')
"""输出结果如下
程序开始...
我已经成年了...
程序结束...
"""
五、if语句
1、if语句判断的定义
如果条件满足,才能做某件事情,如果条件不满足,就做另外一件事情,或者什么也不做
正是因为有了判断,才使得程序世界丰富多彩,充满变化!
判断语句又被称为 “分支语句”,正是因为有了判断,才让程序有了很多的分支
Python程序语言指定任何非0和非空(null)值为true,0 或者 null为false。
Python 编程中 if 语句用于控制程序的执行,基本形式为:
if 判断条件:
满足条件执行的语句……
else:
不满足条件执行的语句……
2、if语句的用法
if 基本用法
例:
# 需求: 编写程序判断年龄大于等于18岁,可以进入网吧了
# 1.获取用户的年龄
age = int(input('请您输入您的年龄:'))
# 2.判断年龄给出提示
if age >= 18:
print('可以进入网吧了~')
if age < 18:
print('回家写作业吧~')
print('其他代码...')
"""输入输出示例
请您输入您的年龄:17
回家写作业吧~
其他代码...
"""
if else格式示例
例1:
flag = False
name = 'passerby'
if name == 'python': # 判断变量是否为 python
flag = True # 条件成立时设置标志为真
print('welcome boss') # 并输出欢迎信息
else:
print(name) # 条件不成立时输出变量名称
"""输出效果如下
passerby
"""
例2:
"""
需求: 已知注册的时候用户名是admin,
要求获取用户登录时输入的用户名,
如果一致就提示登录成功,否则提示登录失败
"""
# 1.获取用户名
name = input('请输入用户名')
# 2.判断
if name == 'admin':
print('登录成功')
else:
print('登录失败')
"""输入输出效果如下
请输入用户名admin
登录成功
"""
if elif else格式示例
例:
"""
需求: 编写一个程序,判断根据学生分数判断学生等级
优:90(含)-100 良:70(含)-90 中:60(含)-70 差:大于等于0小于60
"""
# 1.获取学生的分数
score = int(input('请您输入分数要求范围0-100:'))
# 2.根据优良中差条件依次判断给出对应等级
if 90 <= score <= 100:
print('优')
elif 70 <= score < 90:
print('良')
elif 60 <= score < 70:
print('中')
elif 0 <= score < 60:
print('差')
else:
print('对不起,您的输入有误!!!')
"""输入输出效果如下
请您输入分数要求范围0-100:79
良
"""
if语句嵌套
例:
"""
需求: 编写一个程序,判断根据学生分数判断学生等级
优:90(含)-100 良:70(含)-90 中:60(含)-70 差:大于等于0小于60
"""
# 1.获取学生的分数
score = float(input('请您输入分数要求范围0-100:'))
# 2.根据优良中差条件依次判断给出对应等级
# 优化思路: 先判断是否满足基础条件,满足再判断等级,不满足直接给提示并结束
if 0 <= score <= 100:
if score >= 90:
print('优')
elif score >= 70:
print('良')
elif score >= 60:
print('中')
else:
print('差')
else:
print('对不起,您的输入有误!!!')
"""输入输出效果如下
请您输入分数要求范围0-100:56
差
"""
六、随机数生成
生成随机数需要用到 random模块里的randint()函数,括号里两个参数为整数,划定随机生成整数的范围(可以等于两个参数)
生成随机苏步骤:
1.导入模块: import random
2.生成随机数: num = random.randint(x,y) 注意: 包含x和y
示例:
# 导入模块
# 注意导入规则:就近原则
import random
# 使用random生成随机数
num = random.randint(1, 10)
# 使用随机数
print(num)
七、综合需求,猜数字游戏
需求:
编写一个猜数字程序,要求使用random生成底数,input获取用户录入的数,然后进行比较给出提示
一次机会:
# 需求: 随机生成一个1-10的数字,要求用户只能猜1次
"""
分析步骤
使用random生成1个1-10之间的随机数
使用input获取用户猜的数
拿着用户猜的数和随机数比较
"""
# 1.使用random生成1个1-10之间的随机数
import random
num = random.randint(1, 10)
print(f'你是内部人员,悄悄的告诉你底数是:{num}')
# 2.使用input获取用户猜的数
guess = int(input('请您输入猜的数(1-10):'))
# 3.拿着每次用户猜的数和随机数比较
if 1 <= guess <= 10:
if guess == num:
print('恭喜您,猜对了!')
elif guess > num:
print('猜大了!')
else:
print('猜小了!')
else:
print('输入有误!!!')
三次机会:
# 需求: 随机生成一个1-10的数字,要求用户只能猜3次
"""
分析步骤
使用random生成1个1-10之间的随机数
使用input获取用户猜的数
拿着每次用户猜的数和随机数比较
"""
# 1.使用random生成1个1-10之间的随机数
import random
num = random.randint(1, 10)
print(f'你是内部人员,悄悄的告诉你底数是:{num}')
# 2.使用input获取用户猜的数
guess = int(input('请您输入猜的数(1-10):'))
# 3.拿着每次用户猜的数和随机数比较
if 1 <= guess <= 10:
if guess == num:
print('恭喜您,猜对了!')
else:
if guess > num:
print('猜大了')
else:
print('猜小了')
# 想重新开始猜几次 就循环执行23步几次
# 2.使用input获取用户猜的数
guess = int(input('请您输入猜的数(1-10):'))
# 3.拿着每次用户猜的数和随机数比较
if 1 <= guess <= 10:
if guess == num:
print('恭喜您,猜对了!')
else:
if guess > num:
print('猜大了')
else:
print('猜小了')
# 想重新开始猜几次 就循环执行23步几次
# 2.使用input获取用户猜的数
guess = int(input('请您输入猜的数(1-10):'))
# 3.拿着每次用户猜的数和随机数比较
if 1 <= guess <= 10:
if guess == num:
print('恭喜您,猜对了!')
else:
if guess > num:
print('猜大了')
else:
print('猜小了')
# 想重新开始猜几次 就循环执行23步几次
else:
print('输入有误!!!')
else:
print('输入有误!!!')
else:
print('输入有误!!!')