首页 > 代码库 > 循序渐进-python-03

循序渐进-python-03

运算符是一些符号,它告诉 Python 解释器去做一些数学或逻辑操作。一些基本的数学操作符如下所示:

>>> a=8+9
>>> a
17
>>> b=1/3
>>> b
0.3333333333333333
>>> c=3*5
>>> c
15
>>> 4%3
1

下面是一个计算天数的脚本

#/usr/bin/env python3
#coding:utf8
days = int(input("please enter days:"))
mouth = days // 30
day0 = days %30
print "You enter %s days"%days
print("Total is {} mouths and  {} days".format(mouth,day0))
root@zwjfdisk2016:~/file/1# python days.python
please enter days:1000
You enter 1000 days
Total is 33 Mouths and  10 Days

也可以用divmod函数实现,divmod(num1, num2) 返回一个元组,这个元组包含两个值,第一个是 num1 和 num2 相整除得到的值,第二个是 num1 和 num2 求余得到的值,然后我们用 * 运算符拆封这个元组,得到这两个值。

>>> import sys
>>> c=divmod(100,30)
>>> c
(3, 10)
#!/usr/bin/env python3
days = int(input("Enter Days:"))
print("Total  is {} mouths and {} days".format(*divmod(days,30)))

oot@zwjfdisk2016:~/file/1# python3  daysv2.py 
Enter Days:100
Total  is 3 mouths and 10 days

效果是一样的

关系运算符

OperatorMeaning
<Is less than #小于
<=Is less than or equal to #小于等于
>Is greater than#大于
>=Is greater than or equal to#大于等于
==Is equal to #等于
!=Is not equal to#不等于
>>> 1 == 1
True
>>> 2 > 3
False
>>> 23 == 24
False
>>> 34 != 35
True

逻辑运算符

对于逻辑 与,或,非,我们使用 and,or,not 这几个关键字。

逻辑运算符 and 和 or 也称作短路运算符:它们的参数从左向右解析,一旦结果可以确定就停止。例如,如果 A 和 C 为真而 B 为假,A and B and C 不会解析 C 。作用于一个普通的非逻辑值时,短路运算符的返回值通常是能够最先确定结果的那个操作数。

关系运算可以通过逻辑运算符 and 和 or 组合,比较的结果可以用 not 来取反意。逻辑运算符的优先级又低于关系运算符,在它们之中,not 具有最高的优先级,or 优先级最低,所以 A and not B or C 等于 (A and (notB)) or C。当然,括号也可以用于比较表达式

>>> 4 and 3
3
>>> 0 and 2
0
>>> False or 4 or 5
4
>>> 2 > 1 and not 3 > 5 or 4
True
>>> False and 3
False
>>> False and 4
False

简写运算符

x op= expression 为简写运算的语法形式。其等价于 x = x op expression 

>>> a = 3
>>> a += 20
>>> a
23
>>> a /= 1
>>> a
23.0
>>> a /= 2
>>> a
11.5




本文出自 “有志者,事竟成” 博客,请务必保留此出处http://wuxinglai.blog.51cto.com/9136815/1882009

循序渐进-python-03