python中的输入输出与运算符

95 阅读7分钟

持续创作,加速成长!这是我参与「掘金日新计划 · 10 月更文挑战」的第3天,点击查看活动详情

大家好,我是木大木大,因为疫情和环境原因啊,在家开始了自学python的路子,从此深坑加一人。后面我会每天持续更新一些学习python的过程,当然一开始就是一些基础啦,希望大家多多支持,莫嫌弃啦~

一 用户交互与运算符

Ctrl+d 向下复制

Ctrl+alt+L 格式化代码(规整好代码)

1.1 用户交互

计算机的发明有什么意义

人往计算机中输入input数据

计算机打印print出结果

1.1.1 输入 input

用户使用input输入的任何内容都会被存为字符串类型

input("请输入你的名字:")  # input括号里面的文字只是在你输入的位置前面增加一个友好的提示,并没有实际意义


name = input("请输入你的名字:")
password = input("请输入你的密码:")
print("你的名字是:"+name)
print("你的密码是:"+password)
print(type(name))
print(type(password))

请输入你的名字:木大
请输入你的密码:123
你的名字是:木大
你的密码是:123
<class 'str'>
<class 'str'>

注意:无论我们输入的值是数字类型还是字符串类型,input的接收值都是字符串类型

1.1.2 输出 print

print("hello world","first","second")
print("100+200=",100+200)

hello world first second
100+200= 300
print默认有换行的作用  
有一个end参数的默认值就是\n  
print("11")
print("22")
11
22

print("11",end="")
print("22")
1122

print("11",end="@")
print("22")
11@22

1.2 运算符

算术运算符
赋值运算符
比较运算符
逻辑运算符
成员运算符
身份运算符
运算符的优先级

1.2.1 算术运算符

a = 10 b = 20

运算符描述实例
+加——两个数相加a + b 输出结果 30
-减——得到负数或是一个数减去另一个数a - b 输出结果 -10
*乘——两个数相乘或是返回一个被重复若干次的字符串a * b 输出结果 200
/除——x 除以 yb / a 输出结果 2
%取模——返回除法的余数b % a 输出结果 0
**幂——返回x的y次幂a**b为10的20次方,输出结果100000000000000000000
//取整数——返回商的整数部分(向下取整)9 // 2 ——>4
()小括号提高运算符优先级,比如(1+2)*3
print(10+20) # 30
print(20-10) # 10
print(10*20) # 200
print(10**2) # 100
print(20/10) # 2.0
print(20%10) # 0
print(20//10)  # 2
print(10/3) #  3.3333333333333335
print(10%3) # 1
print(10//3)  # 3

1.2.2 赋值运算符

a = 20

b = 10

c = 200

运算符描述实例
=简单的赋值运算符把 = 号右边的结果 赋给 左边的变量 如:num = 1 + 2 * 3,结果num的值为?
+=加法赋值运算符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
a = 20
b = 10
c = 200
# c+=a # 等价于c = c+a
c-=a # 等价于c = c-a
print(c)

1.2.3 比较运算符

返回出来的都是bool类型

a = 10

b = 20

运算符描述实例
==等于 -- 比较对象是否相等(a == b) 返回 False
!=不等于--比较两个对象是否不相等(a != b) 返回 True
大于--返回x是否大于y(a > b) 返回 False
<小于--返回x是否小于y(a < b) 返回True
>=大于或者等于--返回x是否大于等于y(a >= b) 返回 False
<=小于或者等于--返回x是否小于等于y(a <= b) 返回 True
a = 10
b = 20
print(a == b)
print(a != b)
print(a > b)
print(a < b)
print(a >= b)
print(a <= b)

False
True
False
True
False
True
所有的比较运算符返回True(1)表示真,返回False(0)表示假
注意:TrueFalse的首字母为大写

1.2.4 逻辑运算符

p为真命题,q为假命题,那么p且q为假,p或q为真,非q为真

and or not(全部是小写字母)

a = 10 b = 20

逻辑运算符含义基本格式说明
and逻辑与运算,等价于数学中的”且“a and b当a和b两个表达式都为真时,a and b 的结果才为真,否则为假
or逻辑或运算,等价于数学中的”或“a or b当 a 和 b两个表达式都为假时,a or b 的结果才是假,否则为真
not逻辑非运算,等价于数学中的”非“not a如果 a 为真,那么not a的结果为假;如果 a 为假,那么not a的结果为真,相当于对 a 取反
a = 14 > 6  # True  成立
b = 45 > 90  # False 不成立
print(a and b)  # False
print(a or b)  # True
print(not a)  # False
print(not b)  # True

逻辑运算符的本质

对于and运算符,两边的值都为真时最终结果才为真,但是只要有一个值为假,那么最终结果就是假,所以python按照下面的规则执行and运算:

  • 如果左边表达式的值为假,那么就不用计算右边表达式的值了,因为不管右边表达式的值是什么,都不会影响最终结果,最终结果都是假,此时and会把左边表达式的值作为最终结果

  • 如果左边表达式的值为真,那么最终值是不能确定的,and会继续计算右边表达式的值,并且将右边表达式的值作为最终结果

对于or运算符,情况类似,两边的值都为假时最终结果才是假,只要其中有一个值为真,那么最终结果就是真,所以python按照下面的规则执行or运算:

  • 如果左边表达式的值为真,那么就不用计算右边表达式的值了,因为不管右边表达式的值是什么,都不会影响最终结果,最终结果都为真,此时 or会把左边表达式的值作为最终结果

  • 如果左边表达式的值为假,那么最终值是不能确定的,or会继续计算右边表达式的值,并且将右边表达式的值作为最终结果

1.2.5 成员运算符(in、not in)

用于判断对象是否是某个集合的元素之一

返回结果是布尔值类型

运算符描述实例
in如果在指定的序列中找到值返回True,否则返回Falsea在animals序列中,如果a在animals序列中则返回True
not in如果在指定的序列中没有找到值就返回True,否则返回Falsea不在animals序列中,如果a不在animals序列中就返回True
a = 'dog'
b = 'rabbit'
animals = ['dog', 'elephant', 'snake']
print(a in animals)  # True
print(b in animals)  # False
print(a not in animals)  # False
print(b not in animals)  # True

1.2.6 身份运算符(is,is not)

运算符描述实例
isis 是判断两个标识符是不是引用自一个对象a is b,类似id(a) == id(b),如果引用的是同一个对象则返回True,否则返回False
is notis not 是判断两个标识符是不是引用自不同的对象a is not b,类似id(a) ! = id(b),如果引用的不是同一个对象则返回结果True,否则返回False

注意:is与比较运算符==的区别

is用于判断两个变量的引用是否为同一个对象
==用于判断变量引用的对象的值是否相等

如果有两个人都叫张三

is比较的结果是False,因为他们是不同的人

==比较的结果是True,因为他们都叫张三

is比较的是本质(也就是内存地址)
==比较的是表面(也就是值)
id()  可以查看某个变量或者是对象的内存地址
a = 5
b = 5.0
c = 5
print(id(a))  # 140726186084144
print(id(b))  # 3031667514064
print(id(c))  # 140726186084144
print(a == b)  # True
print(a is b)  # False
print(a is c)  # True

1.2.7 运算符的优先级

运算符说明Python运算符优先级结合性
小括号( )19
乘方**16
符号运算符+(正号)、-(负号)14
乘除*、/、//、%13
加减+、-12
比较运算符==、!=、>、>=、<、<=7
is 运算符is、is not6
逻辑非not4
逻辑与and3
逻辑或or2
算术运算符优先级大于比较运算符
比较运算符优先级大于逻辑运算符

逻辑运算符内部三个优先级:not>and>or

今天的分享就到这里啦,感谢大家的阅读喔~