Python中的运算符
一、Python的输入函数input()
input()
函数是从控制台获得用户的一行输入,无论用户输入什么内容,input()
函数都以字符串类型返回。input()
函数可以包含一些提示性文字,用来提示用户。
input语法格式:变量=input('提示性文字')
无论用户输入的是数字还是字符,input()
函数统一按照字符串类型输出,为了后续能够操作用户输入的信息,需要将输入指定一个变量进行存储。
input()
函数的提示性文字不是必须的,可写可不写。
present = input('提示性文字') # 返回值为字符串类型
'''
present 变量
= 赋值运算符
input('提示性文字') 是一个输入函数,需要输入回答
'''
二、Python中的运算符
1.数值运算操作符
Python提供了9个基本的数值运算操作符。
操作符及运算 | 描述 |
---|---|
x + y | x 与 y 之和 |
x - y | x 与 y 之差 |
x * y | x 与 y 之积 |
x / y | x 与 y 之商,产生结果为浮点数 |
x // y | x 与 y 之整数商 |
x % y | x 与 y 之余商,也称之为模运算 |
- x | x 的负数 |
+ x | x 本身 |
x**y | x 的 y 次幂 |
2.数值运算函数
所谓函数表现为对参数的特定运算。
Python解释器自身提供了一些预先编写好的函数称为内置函数
,其中与数值运算相关的函数如下:
序号 | 函数 | 描述 |
---|---|---|
1 | abs(x) |
x 的绝对值 |
2 | divmod(x, y) |
(x//y, x%y) 输出元组形式的商与余数 |
3 | pow(x, y) 或 pow(x, y, z) |
x**y或(x**y)%z ,幂运算 |
4 | round(x) 或 round(x, d) |
对x 四舍五入保留d 位小数,d 省去则为四舍五入的整数 |
5 | max(x1, x2,...,xn) |
n 个数中的最大值 |
6 | min(x1, x2,...,xn) |
n 个数中的最小值 |
3.算数运算符
'''
算数运算符:
加 +
减 -
乘 *
除 /
整除 //
取余 %
幂 **
'''
print(-9 // -4) # 2
print(9 // 4) # 2
print(-9 // 4) # -3 一正一负整除公式,商取下整
print(9 // -4) # -3
print(9 % -4)
# -3 公式 余数=被除数-除数*商 9-(-4)*(-3)= -3
print(-9 % 4)
# 3 -9 - 4*(-3)= 3
# 规律:规律就是 取余数是负数 结果就是负数
4.赋值运算符
赋值运算符:运算顺序从右到左
'''
赋值运算符:运算顺序从右到左
= a=10
+= a+=b a=a+b
-= a-=b a=a-b
*= a*b a=ab
/= a/=b a=a/b
//= a//=b a=a//b
% a%=b a=a%b
'''
链式赋值,id
相同
'''链式赋值,id相同'''
a = b = c = 20
print(a, type(a), id(a))
print(b, type(b), id(b))
print(c, type(c), id(c))
print('-------------------------')
output:
20 <class 'int'> 140725395003648
20 <class 'int'> 140725395003648
20 <class 'int'> 140725395003648
-------------------------
参数赋值
'''参数赋值'''
a = 20
a += 30 # a = a+30
print(a) # 50
系列解包赋值
'''解包赋值'''
a, b, c = 10, 20, 30
print(a, id(a))
print(b, id(b))
print(c, id(c))
print('---------交换两个变量的值-----------')
a, b = 10, 20
print(a, b)
a, b = b, a
print(a, b)
output:
10 140725395003328
20 140725395003648
30 140725395003968
---------交换两个变量的值-----------
10 20
20 10
5.布尔运算符
布尔类型 用来表示真或假
True
表示真False
表示假- 布尔值可以转化为整数
-
True:1
-
False:0
Python中一切皆对象,所有对象都有一个布尔值,获取对象布尔值使用内置函数bool()
# Python中一切皆对象,所有对象都有一个布尔值
# 获取对象布尔值使用内置函数bool()
'''
以下对象布尔值为False:
False
数值0
None
空字符串 ''
空列表 []
空字典 {}
空元组 ()
空集合 {}
'''
print(bool(False))
print(bool(0))
print(bool(0.0))
print(bool(None))
print(bool(''))
print(bool([])) # 空列表
print(bool(list()))
print(bool({})) # 空字典
print(bool(dict()))
print(bool(())) # 空元组
print(bool(tuple()))
print(bool(set())) # 空集合
print('-------------以上对象bool值均为False------------')
6.比较运算符
比较运算符: 比较的值为True 或 False
''''
> 大于
< 小于
== 等于 比较的是值:value
!= 不等于
>= 大于等于
<= 小于等于
对象id的比较 is is not
'''
7.位运算 & |
'''
位运算符:
位与 & 对应位数都是1,结果才为1,否则为0
位或 | 对应位数都是0,结果才为0
左移运算符 << 高位溢出,低位补0
右移运算符 >> 低位溢出,高位补0
'''
8.逻辑运算符:and or not
True
和 False
二元数值构成了基本的真假逻辑,因此诞生了逻辑运算。
运算符 | 描述 |
---|---|
and | x and y,与操作 |
or | x or y,或操作 |
not | not x,非操作 |
'''
and 且 全真为真
or 或 有真则真
not 非 对bool类型操作数取反
in 在...里
not in 不在...里
'''
三、运算符的优先级
指数运算运算(最高优先级) **
算数运算 * / // % + -
位运算 << >> & |
比较运算符 > < >= <=
等于运算符 == !=
身份运算符 is is not
成员运算符 in not in
逻辑运算符 and or not