本篇博客
1.变量
1.1 变量的输入和输出
1.2 print 函数使用
1.3 input 函数使用
1.4 变量的类型转换
1.5 小结
2 分支语句
2.1 BUG
2.2 IF分支语句
2.3 if 分支语法
2.4 if 条件成立
2.5 练习-猜拳游戏
2.6 小结
1.变量
1.1 变量的输入和输出
输入和输出, 都是相对于程序而言的. 输入和输出, 简称 I/O(input/output)
输入:从键盘读 , 输出:往屏幕写
1. 从键盘读取数据到程序中, 并且从程序中将数据显示到屏幕, 叫做标准输入和输出.
2. 从文件读取数据到程序中, 并且从程序中将数据存储到文件, 叫做文件输入和输出.
3. 从网络读取数据到程序中, 并且从程序中将数据发送到网络, 叫做网络输入和输出(不用知道).
1.2 print 函数使用
print 用于向屏幕输出数据. 分为普通输出和格式化输出.
1. 普通输出变量
# 定义一个整数类型变量 my_number = 100 # 定义一个字符串类型变量 my_string = 'hello itcast' # 输出两个变量 print(my_number) print(my_string)
注意: 变量名不能加引号
2. 格式化输出变量
格式化输出就是让数据按照一定的格式输出, 例如: 我的名字是xxx
进行格式化输出的流程;
1. 先定义输出格式.
2. 在格式中填充数据
% 被称为 格式化操作符,专门用于处理字符串中的格式
包含 % 的字符串,被称为 格式化字符串
% 和不同的 字符 连用,不同类型的数据 需要使用 不同的格式化字符
举例:
已知有数据: name = '司马二狗', age = 30, salary = 19988.78, 请按照 "我的名字是xxx, 我的年龄是xxx, 我 的工资是xxx" 的格式将变量输出
name='司马二狗' age=30 salary=19988.78 res = '我的名字是:%s 我的年龄是:%d 我的工资是:%.2f' % (name,age,salary) print(res)
1.3 input 函数使用
input 函数主要用于从键盘获取数据. , 无论我们输入的数据是小数、整数、还是字符串, 该函数 统统当做字符串类型来获取
# 获得键盘输入 your_name = input('请输入您的名字:') # 输出内容 print(your_name)
1.4 变量的类型转换
变量类型转换就是将变量的类型由一种类型转换为另外一种类型, 例如将变量从数字类型转换为字符串类型
我们可以使用以下函数完成变量类型的转换
1. int(val), 将变量 val 转换为 int 类型.
2. float(val), 将变量 val 转换为 float 类型.
3. str(val), 将变量 val 转换为 str 类型
实例:
left_num=input('请输入与第一个数字:') right_num=input('请输入与第二个数字:') # input() 函数不管输入的是什么,都是字符串类型 left_num_int = int(left_num) right_num_int = int(right_num) res=left_num_int+right_num_int print('%d + %d 的结果是 %d' % (left_num_int,right_num_int,res))
1.5 小结
1. 变量是在程序运行过程中临时保存所需要的数据.
2. 变量的名字规则. 2.1 标识符由字母、下划线和数字组成,且数字不能开头. 2.2 python中的标识符是区分大小
写的. 2.3 变量名一般用小写加下划线组成. 2.4 不能和关键字和已有的名字冲突.
3. 变量的类型决定了变量之间的运算规则. 3.1 字符串和字符串只能进行加法运算, 拼接字符串. 3.2 数字和数字之
间可以进行所有的数学运算. 3.3 数字和字符串之间只能进行乘法运算, 复制指定次数字符串.
4. Python常见的变量类型有: 数字类型、字符串类型、布尔类型.
5. Python中的输入和输出分为: 标准输入和输出、文件输入和输出、网络输入和输出.
6. print 是标准输出函数, 用于向屏幕打印数据.
7. input 是标准输入函数, 用于获得键盘输入的数据.
8. 在某些情况下, 我们拿到的数据并不是我们预期类型, 此时就需要我们将该数据从一种类型转换成我们预期的类
型, 以便于完成计算. 需要注意的是, 进行类型转换的前提是该类型的数据能够转换为预期类型.
2. 分支语句
2.1 BUG
BUG 原意为臭虫,在计算机领域,指导致程序不能正常执行,或者执行结果不是预期的 。初学者常见错误的原因包括:
1. 手误.
2. 对技术点理解不足.
3. 业务思路不熟练.
必须能够定位错误,找出错误原因,更正错误。从今天开始,每遇到的一个问题,都要记录。
2.1 IF分支语句
先看一个系统登录的案例:
# 请输入您的用户名 username = input('请输入您的用户名:') # 请输入您的密码 password = input('请输入您的密码:') # 打印欢迎信息 print('欢迎 %s 登录系统!' % username)
以上的程序在执行过程中, 无论你输入的是什么, 都显示出来欢迎登录系统的信息提示. 实际上, "欢迎登录系统" 这 个提示信息是否要打印出来, 取决于用户名和密码是否正确, 也就是说代码要有选择性的去执行, 而不是最开始无论 你写了多少行代码, 都会执行
如何在程序中, 实现这种有选择的执行某些特定代码呢?使用 if 分支语句
2.2 if 分支语法
1. 单个分支语法格式
if 条件一: 执行一行或多行特定代码
如果条件成立则执行 if 下面的代码, 不成立则不会执行
2. 两个分支语法格式
if 条件一: 执行一行或多行特定代码 elif 条件二: 执行一行或多行特定代码
如果 if 条件成立, 则执行 if 下面的代码 如果 elif 条件成立, 则执行 elif 下面的代码
如果 if elif 条件同时成立, 则 执行 第一个满足条件的分支,
if 条件一: 执行一行或多行特定代码 else: 执行一行或多行特定代码
如果 if 条件成立, 则执行 if 下面的代码 如果 if 条件不成立, 则执行 else 下面的代码 if 和 else 代码必定会执行其中 一个
3. 多个分支语法格式
if 条件一: 执行一行或多行特定代码 elif 条件二: 执行一行或多行特定代码 elif 条件三: 执行一行或多行特定代码 elif 条件四: 执行一行或多行特定代码
如果 if 条件成立, 则执行 if 下面的代码 如果 elif 条件成立, 则执行 elif 下面的代码 如果 if elif 条件同时成立, 则 执行 第一个满足条件的分支
if 条件一: 执行一行或多行特定代码 elif 条件二: 执行一行或多行特定代码 elif 条件三: 执行一行或多行特定代码 elif 条件四: 执行一行或多行特定代码 else: 执行一行或多行特定代码
如果 if 条件成立, 则执行 if 下面的代码 如果 elif 条件成立, 则执行 elif 下面的代码 如果 if elif 都不满足条件, 则执行 else 下面的代码
2.3 if 条件成立
成立则表示结果为真(True), 不成立则表示结果为假(False).
我们可以将多个条件并列写在 if 后面, 此时需要表示多个条件之间的关系, 需要逻辑运算符
多个条件之间的关系,如下图
小案例:
input_name = input('请输入你的姓名:') input_pass = input('请输入你的密码:') currect_name = 'admin' currect_pass = '123' if input_name == currect_name and input_pass == currect_pass: print('欢迎%s登陆系统!'%currect_name) else: print('对不起,用户名或密码错误!')
非零为真,零为假
and 逻辑与
如果第一个条件为假,第二个条件没有必要去执行,直接返回第一个条件执行的结果。
如果第一个条件为真,第二个条件必须去执行,直接返回第二个条件执行的结果。
a = 1 b = 2 ret = a and b print(ret)
or 逻辑或
如果第一个条件为真,第二个条件没有必要去执行,直接返回第一个条件执行的结果。
如果第一个条件为假,第二个条件需要去执行,直接返回第二个条件执行的结果。
a = 1 b = 2 ret = 1 or 2 print(ret)
not 非 如果条件为真, 则结果就为假
# not 如果条件为真, 则结果就为假 result = not (a > b) print('result:', result)
小例子:a>b 的结果为真的就执行a,a>b的结果为假的就执行b
a = 30 b = 20 ret = a > b and a or b print(ret)
理解的写法:
a = 30 b = 20 if a > b: ret = a else: ret = b print(ret)
2.4 练习-猜拳游戏
import random user_quan = int(input('请出拳(剪刀(0) 石头(1) 布(2)):')) computer_quan = random.randint(0,2) print(computer_quan) if (user_quan == 0 and computer_quan == 2) or (user_quan == 1 and computer_quan == 0) or (user_quan == 2 and computer_quan == 1): print('你赢了') elif user_quan == computer_quan: print('平局') else: print('你输了')
2.6 小结
1. if 语句的作用可以实现选择执行某些特定代码.
2. if 语句的条件结果为真, 则会执行对应分支下的代码.
3. if 条件的运算符包含比较关系运算符、逻辑关系运算符.
i. 比较关系运算符用于构建单个条件.
ii. 逻辑关系运算符可用于表示多个条件之间的关系. 5.1 and: 多个条件都为真, 则整个条件结果为真. 5.2 or:
多个条件中有一个条件为真, 则整个条件结果为真. 5.3 not: 对条件取反, 如果条件为真, 则结果为假, 反之
则反.
4. BUG 在程序中不可避免, 要学会解决错误. 多积累