当前位置: 首页 > news >正文

分类信息网站建设模板做网站源码

分类信息网站建设模板,做网站源码,水文化建设网站,平面设计网格一、运算符与表达式 运算符 就是对字面量或者变量进行操作的符号;表达式 是指用运算符把字面量或者变量连接起来,符合 Python 语法的式子。不同运算符连接的表达式体现的是不同类型的表达式;Python 中的运算符主要包括 算术运算符、赋值运算符…

一、运算符与表达式

  运算符 就是对字面量或者变量进行操作的符号;表达式 是指用运算符把字面量或者变量连接起来,符合 Python 语法的式子。不同运算符连接的表达式体现的是不同类型的表达式;Python 中的运算符主要包括 算术运算符赋值运算符比较(关系)运算符逻辑运算符位运算符

二、算数运算符

  算术运算符是用来处理四则运算的符号。

算数运算符运算范例结果
+5 + 27
-5 - 23
*5 * 210
/5 / 22.5
%取模(取余)5  % 21
//取整除,返回商的整数部分5 // 22
**幂,即返回 x 的 n 次方5**225,即 $ 5^{2}$
a = 5
b = 2
print(a, "+", b, "=", (a + b))      # 5 + 2 = 7
print(a, "+", b, "=", (a - b))      # 5 - 2 = 3
print(a, "+", b, "=", (a * b))      # 5 * 2 = 10
print(a, "+", b, "=", (a / b))      # 5 / 2 = 2.5
print(a, "+", b, "=", (a % b))      # 5 /% 2 = 1
print(a, "+", b, "=", (a // b))     # 5 // 2 = 2
print(a, "+", b, "=", (a ** b))     # 5 ** 2 = 25a = "hello"
b = "world"
print(a, b, "=", (a + b))           # hello + world = helloworld

在代码中,如果有小数参与运算,其结果可能是不精确的;

% 取模运算结果的正负与被模数一致,即:a%b 等价于 a-a/b*b,取模结果的正负与 a 的正负一致;

字符串之间也可以进行加法运算。如果将两个字符串相加,则会自动将两个字符串拼接为一个字符串;

如果将字符串和数字相乘,则会对字符串进行复制操作,即把字符串重复指定的次数并返回,例如:“字符串”*m,表示将字符串复制 m 次;

使用除法运算符(/ 或 //)和取余运算符时,除数不能为 0,否则会报以下异常:ZeroDivisionError: division by zero

三、赋值运算符

  赋值运算符 用于将右侧表达式的值赋值给左侧变量。

赋值运算符运算范例结果
=赋值a = 10将 10 赋值给变量a
+=加后赋值a += b将 a + b 的值给 a
-=减后赋值a -= b将 a - b 的值给 a
*=乘后赋值a *= b将 a * b 的值给 a
**=幂运算后赋值a **= b a b a^b ab 的值给 a
/=除后赋值a /= b将 a / b 的值给 a
//=整除后赋值a //= b将 a//b 的值给 a
%=取余后赋值a %= b将 a % b 的值给 a
# 多个变量赋值时使用逗号分隔
a,b = 10,5a += b
print("a = ",a)         # 15
print("b = ",b)         # 5
print()a = 10
b = 5a -= b
print("a = ",a)         # 5
print("b = ",b)         # 5
print()a = 10
b = 5a *= b
print("a = ",a)         # 50
print("b = ",b)         # 5
print()a = 10
b = 5a **= b
print("a = ",a)         # 100000
print("b = ",b)         # 5
print()a = 10
b = 5a /= b
print("a = ",a)         # 2.0
print("b = ",b)         # 5
print()a = 10
b = 5a //= b
print("a = ",a)         # 2
print("b = ",b)         # 5
print()a = 10
b = 5a %= b
print("a = ",a)         # 0
print("b = ",b)         # 5

四、关系运算符

  关系运算符 也被称为 比较运算符;它用于表达式的 比较,并返回一个 真值假值

关系运算符运算范例结果
==比较两个对象的值是否相等4 == 3False
!=比较两个对象的值是否不相等4 != 3True
<比较左侧值是否小于右侧值4 < 3False
>比较左侧值是否大于右侧值4 > 3True
<=比较左侧值是否小于等于右侧的值4 <= 3True
>=比较左侧值是否大于等于右侧的值4 >= 3True
a = 4
b = 3print(a, " == ", b, ": ", (a == b))     # False
print(a, " != ", b, ": ", (a != b))     # True
print(a, " <  ", b, ": ", (a < b))      # False
print(a, " <= ", b, ": ", (a <= b))     # False
print(a, " >  ", b, ": ", (a > b))      # True
print(a, " >= ", b, ": ", (a >= b))     # Truea = "1"
b = "2"
print(a, " < ", b, ": ", (a < b))       # True  a = "abc"
b = "ab"
print(a, " > ", b, ": ", (a > b))       # Truea = 1
b = True
print(a, " == ", b, ": ", (a == b))     # True

  在 Python 中,关系运算符可以连的使用。

result = 1 < 2 < 3	# 相当于 1 < 2 and 2 < 3
print(result)result = 10 < 20 > 15   # 相当于 10 < 20 and 20 > 15
print(result)

在 Python 中可以对字符串进行大于(等于)或小于(等于)的运算,当对字符串进行比较时,实际上比较的是字符串的 Unicode 编码,比较两个字符串的 Unicode 编码时,是逐位比较的;

如果不希望比较两个字符串的 Unicode 编码,则需要将其转换为数字然后进行再进行比较;

相等和不等比较的是对象的值,而不是 id

五、逻辑运算符

  逻辑运算符 用于根据表达式的值返回 真值假值。对于非布尔值进行逻辑运算,会将数据转换为布尔值,然后再进行逻辑运算。

  在 Python 中,所有的对象都可以进行真值测试,其中只有下面列出的几种情况得到的值为假。

  • False 或 None
  • 数值中的零,包括 0、0.0、虚数0
  • 空序列,包括 字符串、空元组、空列表、空字典
  • 自定义对象的实例,该对象的 __bool__ 方法返回 False 或者 __len__ 方法返回 0
逻辑运算符功能
and逻辑与,全真为真,有假为假
or逻辑或,有真为真,全假为假
not逻辑非,非假为真,非真为假

  运算结果:

aba and ba or bnot a
TrueTrueTrueTrueFalse
TrueFalseFalseTrueFalse
FlaseTrueFalseTrueTrue
FalseFalseFalseFalseTrue
a = True
b = True
c = False
d = Falseprint(a, " and ", b, ": ", (a and b))   # True
print(a, " and ", c, ": ", (a and c))   # False
print(c, " and ", d, ": ", (c and d))   # False
print()print(a, " or ", b, ": ", (a or b))     # True
print(a, " or ", c, ": ", (a or c))     # True
print(c, " or ", d, ": ", (c or d))     # False
print()print("not ", a, ": ", (not a))         # False
print("not ", c, ": ", (not c))         # True
print()# 对于非布尔值进行逻辑运算,会先将数据转化为布尔值,然后再进行逻辑运算
a = 1
print("not ", a, ": ", (not a))         # False

  在 Python 中 与运算 和 或运算 都具有短路效果,即当左边的表达式能确定最终结果时,那么右边就不会参与运算了;

  • 与运算符;与运算是找 False的,如果第一个值为 False,则不再看第二个值。
  • 或运算符:或运算是找 True 的,如果第一个值为 True,则不再看第二个值。
print("与运算的短路运算")
True and print("我执行了")
False and print("我不会执行")
print()print("或运算的短路运算")
True or print("我不会执行")
False or print("我执行了")

  当我们对非布尔值进行与或运算时,Python 会将其当作布尔值运算,最终会返回原值。与运算是找 False 的,如果第一个值是 False,则直接返回第一个值,否则返回第二个值。或运算是找 True 的,如果第一个值是 True,则直接返回第一个值,否则返回第二个值。

print("非布尔值的与运算")
# Ture and True
print("1 and 2: ", (1 and 2))        # 2
# True and False
print("1 and 0: ", (1 and 0))        # 0
# False and True
print("0 and 1: ", (0 and 1))        # 0
# False and False
print("0 and None: ", (0 and None))  # 0
print()print("非布尔值的或运算")
# Ture or True
print("1 or 2: ", (1 or 2))        # 1
# True or False
print("1 or 0: ", (1 or 0))        # 1
# False or True
print("0 or 1: ", (0 or 1))        # 1
# False or False
print("0 or None: ", (0 or None))  # None

六、身份运算符

身份运算符功能
is判断两个表示是否引用同一个对象,若引用的是同一个对象则返回 True,否则返回 False
is not判断两个表示是否引用同一个对象,若引用的不是同一个对象则返回 True,否则返回 False
a = 123
b = 123
c = -123
d = -123print("id(a): ",id(a))
print("id(b): ",id(b))
print("id(c): ",id(c))
print("id(d): ",id(d))
print(f"a = {a},b = {b},c = {c},d = {d}")
print()print("a is b: ", (a is b))             # True
print("a is c: ", (a is c))             # False
print()print("a is not b: ", (a is not b))     # False
print("a is not c: ", (a is not c))     # True
print()print("a is b: ",(a is b))
print("c is d: ",(c is d))

在 Python 解释器启动的那一刻开始,就会在内存中实现申请好一系列内存空间存放好常用的整数,范围为 [-5,256]。

如果用 Pycharm 等 IDE,会自动优化;

七、成员运算符

成员运算符功能
in在指定序列中找到值时返回 True,否则返回 False
not in在指定序列中没有找到值时返回 True,否则返回 False
a = "s"
b = "a"
c = "Sakura"print("a = ", a,", b  = ", b,", c = ", c)
print()print("a in c: ", (a in c))                 # False
print("a not in c: ", (a not in c))         # True
print()print("b in c: ", (b in c))                 # True
print("b not in c: ", (b not in c))         # False

八、位运算符

  位运算符是直接对整数的二进制进行的运算; 所有数字在计算机底层都以二进制形式执行;所有的整数值底层都以补码的方式存储;

  • 正数:三码合一,符号位为 0;
  • 负数:符号位为 1
    • 原码:直接将数值转成二进制数,最高位是符号位;
    • 反码:对原码按位取反,符号位不变;
    • 补码:其反码加 1;
位运算符运算范例
<<左移,空位补0,被移除的高位舍弃3 << 2 = 12
>>右移,空位使用符号位填充,被移除的低位舍弃3 >> 1 = 1
&与运算,二进制位进行与运算,全1为1,有0为06 & 3 = 2
|或运算,二进制位进行或运算,有1为1,全0为06| 3 = 7
^异或运算,二进制位进行异或运算,相同为0,不同为16 ^ 3 = 5
~按位取反,二进制位进行取反运算,非0为1,非1为0~6 = -7
print("3 << 2: ", (3 << 2))        # 12
print("3 >> 1: ", (3 >> 1))        # 1
print("-3 >> 1: ", (-3 >> 1))      # -2
print("6 & 3: ", (6 & 3))          # 2
print("6 | 3: ", (6 | 3))          # 7
print("6 ^ 3: ", (6 ^ 3))          # 5
print("~6: ", (~6))                # -7

<<:在一定范围内,每向左移一位,相当于乘以2;

>>:在一定范围内,每向右移一位,相当于除以2;

九、三元运算符

  三元运算符的格式如下:

语句1 if 条件表达式 else 语句2

  它的执行流程如下:

  • 条件运算符在执行时,会先对条件表达式进行求值判断
    • 如果判断结果为 True,则执行语句1,并返回执行结果
    • 如果判断结果为 False,则执行语句2,并返回执行结果
num = int(input("请输入一个数:"))
print("你输入的数比10大") if num > 10 else print("你输入的数不大于10")a = 10
b = 20max = a if a > b else b
print(max)

三元运算符一定可以改成 if-else 语句,反之不成立;

如果程序既可以使用三元运算符又可以使用 if-else 语句,优先使用三元运算符;

十、运算符的优先级

  我们可以使用小括号来提升运算符的优先级

优先级运算符名称或含义使用形式结合方向说明
1(expressions...)圆括号(表达式)左到右
[expressions...]列表[表达式]左到右
{key:value}字典{键:值}左到右
{expressions...}集合{表达式}左到右
2[index]索引[常量]左到右
[start:end:step]切片[起始索引:结束索引:步长]左到右
x(arguments...)方法调用方法名(形参列表)左到右
x.attribute属性访问对象.属性左到右
3**乘方表达式**表达式左到右
4+正号运算符+表达式右到左单目运算符
-负号运算符-表达式单目运算符
~按位取反~表达式左到右
5*表达式 * 表达式左到右双目运算符
/表达式 / 表达式双目运算符
//整除表达式 // 表达式双目运算符
%取余表达式 % 表达式双目运算符
6+表达式 + 表达式左到右双目运算符
-表达式 - 表达式双目运算符
7<<左移变量 << 表达式左到右双目运算符
>>右移变量 >> 表达式双目运算符
8&按位与表达式 & 表达式左到右双目运算符
9^按位异或表达式 ^ 表达式左到右双目运算符
10|按位或表达式 | 表达式左到右双目运算符
11>大于表达式 > 表达式左到右双目运算符
>=大于等于表达式 >= 表达式双目运算符
<小于表达式 < 表达式双目运算符
<=小于等于表达式 <= 表达式双目运算符
==等于表达式 == 表达式双目运算符
!=不等于表达式 != 表达式双目运算符
isis 运算符变量 is 变量左到右双目运算符
is notis not 运算符变量 is not 变量双目运算符
inin 运算符元素 in 序列左到右双目运算符
not innot in 运算符元素 not in 序列双目运算符
12not逻辑非not 表达式左到右单目运算符
13and逻辑与表达式 and 表达式左到右单目运算符
14or逻辑与表达式 and 表达式左到右单目运算符
15if-else三元表达式语句1 if 条件表达式 else 语句2
16=赋值运算符变量=表达式右到左
/=除后赋值变量/=表达式
*=乘后赋值变量*=表达式
%=取模后赋值变量%=表达式
+=加后赋值变量+=表达式
-=减后赋值变量-=表达式
<<=左移后赋值变量<<=表达式
>>=右移后赋值变量>>=表达式
&=按位与后赋值变量&=表达式
^=按位异或后赋值变量^=表达式
|=按位或后赋值变量|=表达式
http://www.yayakq.cn/news/53171/

相关文章:

  • 家电网站建设总体目标重庆做网站制作的公司
  • 网站推荐男生正能量惠州3d网站建设全景
  • 网站建设多少钱比较合适网站建设用那个软件
  • 成都高端网站建设哪家好erp管理系统官网
  • 绍兴网站建设制作wordpress上传视频人50
  • 新开传奇网站手机版网站手机客户端制作软件
  • 高端手机网站脚本外链生成工具
  • 做网站策划用什么软件郑州男科医院哪家比较好的医院
  • 电商数据分析网站生活服务网站开发
  • 开发一个商城网站多少钱网站建设 十年
  • 四川网站建设贴吧做网站时会留下ip地址吗
  • 网站开发人力成本西安网站策划设计
  • 人人开发网站全网投放广告的渠道有哪些
  • 做外贸大大小小的网站有哪些人工智能网站开发
  • 建南沙做网站公司系统网站建设公司
  • 网站案例模版潮州网站建设
  • 手机网站开发服务商wordpress文章价格
  • sql与网站开发wordpress设计笔记
  • 南京网络推广网站建设公司微信公众号登录二维码
  • 新创建的网站学校网站建设怎么样
  • 欧美在路边给了钱就可以做网站做网站开发前景如何
  • 关于门户网站建设讲话个人网页制作价格
  • 网站tdk设置界面浙江软装设计公司
  • 做网站还需要买服务器么南京网站开发xuan南京乐识
  • 佛系汉化组.wordpress com没有网站怎么做seo
  • 如何进行网页设计和网站制作wordpress 发布说说
  • 沧州大型网站建设怎么做网站在里面填字
  • 网站建设模板登录界面织梦dedecms5.6 网站搬家详细教程
  • 网站欢迎界面设计室内装饰设计是干什么的
  • 如何做网站清风制作页面设计论文