用户交互与运算符

写博客的第二天

先说几句废话啊,这只是我学习python的笔记记录以及我的理解,仅供参考,哪里讲错了请大佬指点,大佬勿喷!!!

仅供参考!!!

三 、用户交互

3.1 输入(input)

input的作用就会用来接收用户输入的信息,这些信息会被存为字符串,里面可以放用来提醒用户该输入什么信息(必须要用引号包裹起来)

例:

name = input('请输入你的名字:')    # 把用户输入的信息存入name里面
print(name)     # 打印用户输入的信息,如果用户输入的是张三,那么输出的就是张三

**注意:**无论用户输入的是什么类型,input接收的都是字符串类型

3.2 输出print

这个应该都知道是什么意思,就是输出内容

比如前面的例子:

print(hello world)
# 就是打印hello world这句话

print本身有换行的作用,print有个参数,end参数,默认是end=“\n”,end参数的只可以改成任意其他字符

例:

print('a')
print('b')
# 此时end参数的值没改,还是用的默认换行
# a
# b

如果改了之后运行的结果是下面这样的

print('a',end='')
print('b',end='$')
# ab$ 可以看到运行的结果是一行并排的

四 、运算符

运算符主要讲以下六种种,下面先一一列举出来,再讲运算符的作用

  1. 算术运算符
  2. 赋值运算符
  3. 比较运算符
  4. 逻辑运算符
  5. 成员运算符
  6. 身份运算符

4.1 算术运算符

以变量a为10,b为20举例

运算符描述实例
+两个数相加a+b 输出结果为30
-两个数相减a-b 输出结果为-10
*两个数相乘a*b 输出结果为200
/除——用第一个数除第二个数a/b 输出结果为0.5
%取余——返回余数,如果整除了余数就是0b%a 结果为0
**指数也叫幂a**b 10的20次方,20个10相乘 输出结果为100000000000000000000
//取整——python没有四舍五入这个说法9//2 输出结果为4
()小括号,提高运算符优先级,跟数学同理比如(1+2)*3 这样就会先算括号里面,输出结果为9

除法返回的类型是浮点数,不管能否整除,返回的都是浮点数

注意:int类型不能跟字符串做加法运算,字符串与字符串相加就是如前面的拼接

s1 = 'hello'
s2 = 'world'
print(s1+s2)

# helloworld

字符串也不能相乘,如果是乘以数字就是这个字符串相拼接乘的次数

s = 'hello'
print(s*3)
# hello拼接三次 hellohellohello

4.2 赋值运算符

以下面三个变量理解赋值运算符

a = 10

b = 20

c = 200

运算符描述实例
=简单的赋值运算符把 = 右边的结果赋给左边的变量 如:num = 1 + 2*3,num的值为7
+=加法赋值运算符c += a 等价于 c = c+a
-=减法赋值运算符c -= a 等价于 c = c-a
*=乘法赋值运算符c *= a 等价于 c = c * a
/=除法赋值运算符c /= a 等价于 c = c/a
%=取膜赋值运算符c%=a 等价于c = c%a
**=指数赋值运算符c ** = a 等价于 c = c **a
//=取整赋值运算符c //= a 等价于 c = c//a

4.3 比较运算符

返回True表示真,返回False表示假(首字母大写)

1 也代表真,对应的0即假

a = 10 ,b = 20

运算符描述实例
==等于——判断是否相等a == b 返回False
!=不等于——判断是否不相等a != b 返回True
>大于——判断x是否大于ya > b 返回False
<小于——判断x是否小于ya < b 返回True
>=大于或者等于——判断x是否大于等于ya >= b 返回False
<=小于或者等于——判断x是否小于等于ya <= b 返回True
a = 20
b = 20
print(a == b)
print(a != b)
print(a > b)
print(a < b)
print(a >= b)
print(a <= b)

# True
# False
# False
# False
# True
# True

4.4 逻辑运算符

逻辑运算符含义基本格式说明
and并且a and band两边都是条件表达式,只有同时满足条件a和条件b才为真(True),否则即为假(False)
or或者a or bor两边也同样都是条件表达式,只要满足两个条件表达式中其中一条即为真(True),只有两边都不满足才为假(False)
notnot a取反的意思,判断b是否是a,如果不是即为真(True),否则即为假(False)

4.4.1 逻辑运算符的本质

在python中,and和or不一定会计算右边表达式的值,有时候只计算左边表达式的值就能得到最终的结果

总结:

对于and:两者都,都要满足,才可以
如果左边表达式的值为假,那么右边表达式的值就没有必要计算了,最终结果都是假,此时就会把and左边的值作为最终结果
如果左边表达式的值为真,那么最终值是不能确定的,and会继续计算右边表达式的值,并且将右边表达式的值作为最终结果

对于or:有一个为真,结果就是真
如果左边表达式的值为真,那么就不用计算右边的值了,最终的结果是真,此时会把左边表达式的值作为最终结果
如果左边表达式的值为假,那么最终值是不能确定的,or会继续计算右边表达式的值,并且将右边表达式的值作为最终结果

4.5 成员运算符

运算符描述实例
in如果在指定序列中找到值返回True,否则返回Falsea in python,判断a是否在python里面,很明显a不在python里面,返回False
not in如果在指定序列中没有找到值返回True,否则返回Falsea not in python,判断a是否不在python里面,a 不在 python里面,返回True

是python独有的运算符,用于判断对象是否是某个集合的元素之一,运行速度非常快,返回的结果是布尔类型

a = 'python'
print('b' in a)
print('p' in a)
print('p' not in a)
print('b' not in a)

# False
# True
# False
# True

4.6 身份运算符

用于比较两个对象的内存地址

运算符描述实例
isis 判断两个标识符是否引用自一个对象a is b,类似id(a) == id(b),简单理解就是a的内存地址是否等于b的内存地址,如果引用的是同一个对象则返回True,否则返回False
is notis not 判断两个标识符是否不是引用不同的对象a is not b,类似id(a) != id(b),如果引用的不是同一个对象返回True,否则返回False

id作用是查看内存地址,id(a),查看a的内存地址

要注意 is 和比较运算符的 == 的区别,两者有根本的区别,一定不要混用

is 判断两个变量的内存地址是否一样,有些变量表面看着不一样,实则内存地址一样

== 判断两个变量的值是否一样,有些变量表面看着一样,实则内存地址不一样

例子:如果有两个人都叫张三,那么is比较的结果False,因为他们是不同的两个人,==比较的结果是True,因为他们都叫张三。

is比较的是本质(也就是内存地址),==比较的是表面

a = 5
b = 5.0
print(a == b)  # True
print(a is b)  # False

上面这个例子看着5 不就是等于5.0吗,但是他们类型不一样所以会分开存储

a = 5
b = 5.0
print(id(a))
print(id(b))

# 1590649184
# 2128295891640 这两个编号就是他们的内存地址,is比较的就是这个东西
a = 2
b = 2

# 1590649088
# 1590649088	此时它们就完全一样了

上面的代码理解就是先开辟一个内存空间把2放进去,这个a就是指向这个内存空间的东西,那么b = 2 ,就是多了一个b指向这片内存空间

也可以这样理解这个2的内存空间,就简称张三吧,张三某天在路上瞎逛,在草丛捡了个没人认领的孩子,也是他就当了这个孩子的爹,于是取名为a,过几天张三又出去瞎逛,又捡了一个孩子,取名为b,那么请问a和b的爹是谁?

他们的爹都是张三,a和b就是两个变量,张三就是这片内存空间

4.7 运算符的优先级

优先级最高的运算符有限计算或者处理,同级别的按照从左往右的顺序计算(赋值运算符除外,它是从右往左的顺序)

运算符描述
**指数(最高优先级)
~ + -按位翻转,一元加号和减号(最后两个的方法名为 +@ 和 -@)
* / % //乘,除,取模和取整数
+ -加法减法
>> <<右移,左移运算符
&位 “AND”
^ |位运算符
<= < > >=比较运算符
<> == !=等于运算符
= %= /= //= -= += *= **=赋值运算符
is,is not身份运算符
in,not in成员运算符
not or and逻辑运算符
  • 算术运算符优先级 大于 比较运算符
  • 比较运算符优先级 大于 逻辑运算符
  • 逻辑运算符内部三个优先级:not>and>or

以上优先级从高到低总结:加减乘除 > 比较 > 逻辑

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值