前言
Python当中常用操作符,有分为以下几类。幂运算(**),正负号(+,-),算术操作符(+,-,*,/,//,%),比较操作符(<,<=,>,>=,==,!=),逻辑运算符(not,and,or)。
操作符介绍
幂运算(**)
>>> 3 **
3
27
正负号(+,-)
幂运算的优先级比较特殊,
因为幂操作进行运算的时候,他和一元操作符的运算关系比较暧昧,减号(-)当作负号(-)来使用时,他是一元操作符,表示负数。
幂操作符比其左边的操作符优先级高,比起右边的优先级低。例如:
>>> -3 ** 2
-
9
>>> -(3 ** 2)
-
9
>>> 3 ** -2
0.1111111111111111
>>> 3 ** (-2)
0.1111111111111111
算术操作符(+,-,*,/,//,%)
算术操作符中,a = a +
5 可以写成 a + =
5,其他算数操作符也适用,例如:
>>> a = b = c = d =
10
>>> a +=
1
>>> b -=
3
>>> c *=
10
>>> d /=
8
>>> a
11
>>> b
7
>>> c
100
>>> d
1.25
'//' 表示floor除
>>> 3 //
2
1
>>> 3.2 //
2.0
1.0
>>> 3.2 //
2
1.0
'%' 表示求余数
>>> 9 %
2
1
>>> 9 %
7
2
比较操作符(<,<=,>,>=,==,!=)
根据表达式的值真假来返回bool类型的值,例如:
>>> 1 <
2
True
>>> 3 >
4
False
>>> 2 ==
2
True
>>> 2 !=
2
False
逻辑运算符(not,and,or)
逻辑运算符的优先级是不同的,
not >
and >
or,例如:
>>> not 1 or 0 and 1 or 3 and 4 or 5 and 6 or 7 and 8 and 9
4
等价于加上括号之后的:
>>> (
not 1)
or (
0 and 1)
or (
3 and 4)
or (
5 and 6)
or (
7 and 8 and 9)
4
操作符优先级
练练手
把上篇博客中求闰年,用%改写
temp = input(
'请输入一个年份:')
while not temp.isdigit():
temp = input(
"抱歉,您的输入有误,请输入一个整数:")
year =
int(temp)
if year
@0 ==
0:
print(temp +
' 是闰年!')
else:
if (year
%4 ==
0)
and (year
0 !=
0):
print(temp +
' 是闰年!')
else:
print(temp +
' 不是闰年!')
写一个程序打印出0 ~ 100所有的奇数
i =
0
while i<=
100:
if i
print(
i,
end=
' ')
i +=
1
else:
i +=
1
爱因斯坦的难题
i =
1
x =
7
flag =
0
while i<=
100:
if (
x%2 ==
1)
and (
x%3 ==
2)
and (
x%5 ==
4)
and (
x%6 ==
5):
flag =
1
else:
x =
7 * (i +
1)
i +=
1
if flag ==
1:
print(
'阶梯数是:',
x)
else:
print(
'在程序限定范围内找不到答案!')
------------------------------------------------------------------------------------------------
x =
0
while 1:
if (
x%2 ==
1)
and (
x%3 ==
2)
and (
x%5 ==
4)
and (
x%6 ==
5)
and (
x%7 ==
0):
print(
'阶梯数是:',
x)
break
else:
x +=
1
转载于:https://www.cnblogs.com/wanbin/p/9514706.html
相关资源:零基础入门学习Python