当前位置:
首页 > Python基础教程 >
-
python基础教程之python 学习第四天
基本运算符
算术运算符
从小学开始我们就使用算数运算符,常用的有+ - * / % ** //
print(1+1) # 2
print(7-2) # 5
print(3*8) # 24
print(9/4) # 2.25 得到一个浮点型
print(11%3) # 2
print(7**2) # 49
print(19//6) # 3
下面给一张图给大家作参考
比较运算符
比较运算符就是做比较的,它的运算值返回类型为布尔类型
==,!=,<>,>,<,>=,<=
pwd='1234'
print(pwd!='1234')
print(pwd=='1234')
#
False
True
下面直接贴图啦!
赋值运算符
最常见的就是 =
age=19
age=age+1 # 相当于age+=1
print(age)
age=19
age+=1
print(age)
20
20
下面直接放图片啦
逻辑运算符
and 条件一起满足
or 条件满足其一
not 条件进行否定
print(3>1 and 5<4)
print(3>1 or 5<4)
print(not 'gelinli 很丑')
False
True
False
# 从左到右的方式找到逻辑运算符,找到逻辑运算符的左边,左边成立,再去找逻辑运算符的右边
print(3>7 and 6<9 or 10!=1)
身份运算符
身份运算符用于比较两个对象的存储单元,其实在内存空间地址的比较,是否相同
下面给个图理解一下
is和==的区别:is用于判断两个变量引用对象是否为同一个(是否在同一块内存空间中),==用于判断引用变量的值是否相等。
X=258
Y=X
Z=258
print(f'X is Y :{X is Y}')
print(f'X == Y :{X is Y}')
print(f'X == Z :{X is Y}')
X is Y :True
X == Y :True
X == Z :True
python运算符优先级
python运算符的优先级相当于数学中的先算乘除再算加减,想要优先算哪一个也可以用括号括起来。
下面给一张图
链式赋值
a=10
b=10
c=10
d=10
print(f'a:{a},b:{b},c:{c},d:{d}')
a:10,b:10,c:10,d:10
a=b=c=d=10
print(f'a:{a},b:{b},c:{c},d:{d}')
a:10,b:10,c:10,d:10
交叉赋值
x=198
y=78
temp=x
x=y
y=temp
print(f'x:{x},y:{y}')
x:78,y:198
x=198
y=78
x,y=y,x
print(f'x:{x},y:{y}')
x:78,y:198
解压缩
如果我们给出一个列表,我们需要一次性取出多个值,我们是不是可以用下面的方法实现呢?
hobby_list=['read','run','basketball']
x=hobby_list[0]
y=hobby_list[1]
z=hobby_list[2]
print(f'x: {x},y: {y},z: {z}')
x: read,y: run,z: basketball
变量值的解压缩可以这样理解,超市打包是把多个商品放在一起,解压缩其实就是解包把多个产品一次性拿出来
hobby_list=['read','run','basketball']
x,y,z=hobby_list
print(f'x: {x},y: {y},z: {z}')
x: read,y: run,z: basketball
有时候我们解压的值可能是我们不想要的,那么可以使用下滑线,万能的下划线
hobby_list=['read','run','basketball','work']
x,y,z,a=hobby_list
print(f'x: {x},y: {y},z: {z}')
现在我需要前面三个,后面一个我不想要
hobby_list=['read','run','basketball','work']
x,y,z,_=hobby_list
print(f'x: {x},y: {y},z: {z}')
现在我只想要x和z
hobby_list=['read','run','basketball','work']
x,_,z,_=hobby_list #_相当于告诉计算机不要了,变量名一般不能以_开头和结尾,也有以_开头的变量,这个后面会讲到
print(f'x: {x},y: {_},z: {z}') # 这里其实_是变量,最后输出的值是最后被赋的值work,开始是run
x: read,y: work,z: basketball
还有更省略的操作
hobby_list=['read','run','basketball','work','writting','swimming']
x,y,_,_,_,Z=hobby_list
x,y,*_,z=hobby_list
print(f'x: {x},y: {y},z: {z}')
print(*_)
x: read,y: run,z: swimming
basketball work writting
其实在下划线 _ 以及*_ 的使用,主要还是想完的把列表或者字典表达出来,而需要的用方便的变量表示,方便取出,也可以取出一大块区间的数据,按照相应的位置。
写程序不是用来装逼的,关键是创造价值。python追求的是简洁性,代码不要写的太长了。因此字典也是可以的,但是字典的解压是key。
info={'name':'gelinli','age':18}
x,y=info
print(x,y)
name age
栏目列表
最新更新
nodejs爬虫
Python正则表达式完全指南
爬取豆瓣Top250图书数据
shp 地图文件批量添加字段
爬虫小试牛刀(爬取学校通知公告)
【python基础】函数-初识函数
【python基础】函数-返回值
HTTP请求:requests模块基础使用必知必会
Python初学者友好丨详解参数传递类型
如何有效管理爬虫流量?
SQL SERVER中递归
2个场景实例讲解GaussDB(DWS)基表统计信息估
常用的 SQL Server 关键字及其含义
动手分析SQL Server中的事务中使用的锁
openGauss内核分析:SQL by pass & 经典执行
一招教你如何高效批量导入与更新数据
天天写SQL,这些神奇的特性你知道吗?
openGauss内核分析:执行计划生成
[IM002]Navicat ODBC驱动器管理器 未发现数据
初入Sql Server 之 存储过程的简单使用
这是目前我见过最好的跨域解决方案!
减少回流与重绘
减少回流与重绘
如何使用KrpanoToolJS在浏览器切图
performance.now() 与 Date.now() 对比
一款纯 JS 实现的轻量化图片编辑器
关于开发 VS Code 插件遇到的 workbench.scm.
前端设计模式——观察者模式
前端设计模式——中介者模式
创建型-原型模式