赋值,逻辑,运算符, 控制流程之if 判断
赋值运算
(1). 增量运算


age += 1 # age = age + 1
print(age) age -= 10 # age = age - 10
(2).交叉赋值


x = 111
y = 222 # temp=x
# x=y
# y=temp python 中的交叉赋值
x, y = y, x
print(x)
print(y)
(3)链式赋值


x=10
y=x
z=y
x = y = z = 10
print(id(x),id(y),id(z))
(4). 解压赋值


传统的取值
salaries = [111, 222, 333, 444, 555]
mon0 = salaries[0]
mon1 = salaries[1]
mon2 = salaries[2]
mon3 = salaries[3]
mon4 = salaries[4] 解压取值
mon0,mon1,mon2,mon3,mon4=salaries
print(mon0)
print(mon1)
print(mon2)
print(mon3)
print(mon4) 注意1: 变量名与值的个数必须一一对应
mon0,mon1,mon2,mon3,mon4,mon5=salaries # 多一个变量名不行
mon0,mon1,mon2,mon3=salaries # 少一个变量名不行 *_号收取多余的值, _会返回一个列表
保留前 n个
salaries = [111, 222, 333, 444, 555]
mon0,mon1,*_=salaries
print(mon0)
print(mon1)
print(_) 保留后 n个
*_,x,y=salaries
print(x,y)
print(_) 取两边
x,*_,y,z=salaries
print(x)
print(y)
print(z)


字典解压后得到key, 跟列表一样的操作
dic={'k1':111,'k2':222,'k3':3333}
x,y,z=dic
print(x,y,z)
print(dic[x],dic[y],dic[z])
字典解压


了解的知识点
x, y, z,a,b = "hello"
print(x)
字符串解压
逻辑运算
一, 只要能得到True 或 False 两种值的东西都能当做条件
例:
1. 显式布尔值: 表面就直接是True 或 False
(1). 比较运算的结果
print(10>3)
print(10==3)
(2). 变量值直接就是True 或False
tag= True
msg= False
2. 隐式布尔值: 表面上是一种值, 底层会被解释器转换成True 或 False
0.None.空布尔值为False, 其余值对应的布尔值均转为TRue
10
3.1
""
[]
{"k1":222}
None
二. 逻辑运算符: 用来连接多个条件
(1) , not 条件 : 对条件的结果取反
print(not 10 > 3)
print(not False)
print(not 0)
(2). 条件1 and 条件2 : 连接左右两条件, 两个条件都必须为真, 最终结果才为真
print(True and 10 > 3)
print(True and 10 == 3)
(3). 条件1 or 条件2 : 连接左右两条件, 两个条件中只要有一个为True, 最终结果就为True
print(False or 10 == 3)
print(True or 10 == 3)
偷懒原则---> 即短路原则
and : 其中一个不成立立马终止判断, 返回False
or : 其中一个成立立马终止判断, 返回True
(4). 优先级 : not > and > or , 推荐使用括号取标识优先级
False or True
res=(3 > 4 and 4 > 3) or (not (1 == 3 and 'x' == 'x')) or 3 > 3
print(res)
流程控制之 if 判断
if 判断的完整语法


if 条件1:
代码1
代码2
代码3
...
elif 条件2:
代码1
代码2
代码3
... ... else:
代码1
代码2
代码3
...


运行原理示范:
print(1111)
print(2222)
if True:
print('if内的代码1')
print('if内的代码2')
print('if内的代码3')
print(3333)
运行原理
语法1
if 条件1:
代码1
代码2
代码3
...


gender = "female"
age = 18
is_beautiful = True if gender == "female" and 60 >= age >= 18 and is_beautiful:
print('开始表白。。。') print('后续代码。。。')
例
语法2
if 条件1:
代码1
代码2
代码3
...
else:
代码1
代码2
代码3
...


gender = "female"
age = 70
is_beautiful = True if gender == "female" and 60 >= age >= 18 and is_beautiful:
print('开始表白。。。')
else:
print('阿姨好,开个玩笑。。。') print('后续代码。。。')
例
语法3
if 条件1:
代码1
代码2
代码3
...
elif:
代码1
代码2
代码3
...
else:
代码1
代码2
代码3
...


# 如果:成绩 >= 90 那么:优秀
#
# 如果成绩 >= 80 且 < 90, 那么:良好
#
# 如果成绩 >= 70 且 < 80, 那么:普通
#
# 其他情况:很差 score = input("请输入你的成绩:") # score = "93"
score=int(score)
if score >= 90:
print("优秀")
elif score >= 80:
print("良好")
elif score >= 70:
print("普通")
else:
print("小垃圾,很差") print('其他代码。。。。')
语法4
if 嵌套


gender = "female"
age = 18
is_beautiful = True
is_successful = True if gender == "female" and 60 >= age >= 18 and is_beautiful:
print('开始表白。。。')
if is_beautiful:
print('在一起')
else:
print('再见。。。')
else:
print('阿姨好,开个玩笑。。。') print('后续代码。。。')
赋值,逻辑,运算符, 控制流程之if 判断的更多相关文章
- day04控制流程之if判断
一.控制流程之if判断 1.什么是if判断 判断一个条件如果成立则...不成立则... 2.为何要有if判断 让计算机能够像人一样具有判断能力 3.如何用if判断 ''' # 语法1: ''' if ...
- 控制流程之if判断与while、for循环
一.if判断 1.什么是if判断? 接收用户输入的名字 接受用户输入的密码 如果用户输入的名字=正确的名字 并且 用户输入的密码=正确的密码 告诉用户登录成功 否则, 告诉用户登录失败 2.为何要有i ...
- 如何理解 Python 的赋值逻辑
摘要: 如果你学过 C 语言,那么当你初见 Python 时可能会觉得 Python 的赋值方式略有诡异:好像差不多,但又好像哪里有点不太对劲. 本文比较并解释了这种赋值逻辑上的差异.回答了为什么需要 ...
- Python中斐波那契数列的赋值逻辑
斐波那契数列 斐波那契数列又称费氏数列,是数学家Leonardoda Fibonacci发现的.指的是0.1.1.2.3.5.8.13.21.34.······这样的数列.即从0和1开始,第n项等于第 ...
- 黑马程序员——JAVA基础之程序控制流结构之判断结构,选择结构
------- android培训.java培训.期待与您交流! ---------- 程序控制流结构:顺序结构:判断结构:选择结构:循环结构. 判断结构:条件表达式无论写成什么样子,只看最终的结构是 ...
- C# 使用运算符重载 简化结果判断
执行某个方法后, 一般都要对执行结果判断, 如果执行不成功, 还需要显示错误信息, 我先后使用了下面几种方式 /// <summary> /// 返回int类型结果, msg输出错误信息 ...
- 1. Swift基本变量|运算符|控制流
Swift基于cocoa Touch框架,苹果官方为了保证Swift的可靠性,结合多种语言的特性,同时独立了一套属于自己的单独语言,结合了C,C++,OC,Java等语言. 基本变量: 1 . swi ...
- Python学习笔记——基础篇【第一周】——变量与赋值、用户交互、条件判断、循环控制、数据类型、文本操作
目录 Python第一周笔记 1.学习Python目的 2.Python简史介绍 3.Python3特性 4.Hello World程序 5.变量与赋值 6.用户交互 7.条件判断与缩进 8.循环控制 ...
- Oracle中使用PL/SQL如何定义参数、参数赋值、输出参数和 if 判断
1.pl/sql如何定义参数 declare --1)定义参数 -- ban_Id number; ban_Name ); 2.pl/sql如何参数赋值 --2)参数赋值-- ban_Id :; ba ...
随机推荐
- centos6 升级python2.6 到 python2.7
由于开发库依赖于python27,而自己安装的centos6.8自带的python是2.6.6. 因为centos的yum依赖于python26因此不打算覆盖26. 步骤如下: 1.官网下载源码压缩包 ...
- @atcoder - AGC008E@ Next or Nextnext
目录 @description@ @solution@ @accepted code@ @details@ @description@ 给定一个长度为 N 的序列 a,问有多少排列 p,满足对于每一个 ...
- Android学习笔记StateListDrawable文件
SateListDrawable,可包含一个 Drawable 数组,让目标组件在不同状态显示不同 Drawable.对应的 xml 文件的根节点 示例 edittext_focused.xml &l ...
- Java并发--ReentrantLock原理详解
ReentrantLock是什么? ReentrantLock重入锁,递归无阻塞的同步机制,实现了Lock接口: 能够对共享资源重复加锁,即当前线程获取该锁,再次获取不会被阻塞: 支持公平锁和非公平锁 ...
- 【Laravel】 常用的artisan命令
全局篇 查看artisan命令php artisanphp artisan list 查看某个帮助命令php artisan help make:model 查看laravel版本php artisa ...
- python django mkdir和makedirs的用法
总结一下mkdir和makedirs的用法: 1.mkdir( path [,mode] ) 作用:创建一个目录,可以是相对或者绝对路径,mode的默认模式是0777. ...
- python 模块 来了 (调包侠 修炼手册一)
模块 什么是模块 模块:就是一系列功能的结合体 ,也可以说 一个.py文件包含了 Python 对象定义和Python语 那么 他就 可以说是 一个模块 模块的三种来源: 1.内置的(python解释 ...
- Python3-算法-选择排序
选择排序 选择排序(Selection sort)是一种简单直观的排序算法.它的工作原理是每一次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置,直到全部待排序的数据元素排完. ...
- JAVA设计模式 3【创建型】理解工厂模式与抽象工厂模式
上一节我们已经学习了原型模式,稍微复习一下:通过重写Object 类的clone() 方法实现浅克隆,浅克隆也要实现Cloneable 标记接口.而深克隆则是将对象通过序列化和反序列化 的方式进行创建 ...
- Day12-微信小程序实战-交友小程序-优化“附近的人”页面与serach组件的布局和样式以及搜索历史记录和本地缓存*内附代码)
回顾/:我们已经实现了显示附近的人的功能了,可以多个人看到附近的人页面了 但是还是要进行优化有几个问题:1.我们用户选择了其他的自定义头像之后,在首页可以看到头像的变化,但是在附近的人中头像会变成报错 ...