1.与java和c语言相通,python中也分为四种运算符:
(1)算数运算符(如:+、-、*、/);
学过java或者C的朋友,对加减乘除这种普通的算数运算符再了解不过了,在这里我们介绍下需要注意的几点。
<1>3/2与3.0/2的区别,在java或者C语言中,3/2=1,3.0/2=1.5,这是因为精确度的不同,两个整数相除时只是精确到整数部分,而两个相除的数中如果存在浮点类型,结果会是精确度较高的浮点类型。在python2.4中,以上两个表达式结果与java和C的结果是一样的。但是python3.4对这种情况做出了改进,以下是python3.4的代码:
[python] view plaincopy
print(3/2)
print(3.0/2)
运算结果如下
:
由结果可以看出在python3.4中3/2=1.5,这是与python2.4不同的地方,希望引起大家的注意
但是如果想获取3/2的整数部分又怎么办呢?python为我们提供了整除运算//,比如3//2,python会只取整数部分。代码如下:
[python] view plaincopy
print(3//2)
print(5.6/2)
print(5.6//2)
结果如下
:
可以看到3//2=1;5.6//2=2.0;都只取到了整数部分,这就是python的整除运算.
<2>求幂运算**,比如3**2,就是求3的平方,这是java和C语言中都没有的,不过用起来会更加方便。代码如下:
[python] view plaincopy
#求幂运算
print(2**3)
print(3**3)
运行结果
:
2**3=8;3**3=27.
<3>除此之外python还为我们提供了取余运算,这与java与C都是一样的,就是取两个整数相除的余数。
(2)赋值运算符(如:=、+=、*=、/=、%=);
python的赋值运算与java和C也是一样的,如a+=3,即a=a+3;类似a*=3,即a=a*3;a/=3,即a=a/3;a%=3,即a=a%3;
(3)关系运算符(如:>、>=、==、<=);
关系运算符在java与C语言中用的也很常见,比如3>2会返回一个布尔类型的值true,只需要注意一点3与3.0的比较:
在java中的代码:
[java] view plaincopy
public class test {
public static void main(String[] args) {
// TODO 自动生成的方法存根
System.out.println(3==3.0);
}
}
运行结果如下
:
在python中的代码:
[python] view plaincopy
print(3==3.0);
运行结果如下
:
嘿嘿,其实在python和java中,3和3.0虽然数据类型不同,但比较的只是值是否大小一样,所
以返回的都是true.
(4)逻辑运算符(如:and、or、not);
虽然java和python在逻辑运算符的表达形式上有所差异,但所要表达的思想是相通的;比如:and就相当于java中的&&,or相当于java中的||,not相当于java中的取非!。
代码如下:
[python] view plaincopy
print(3>4 and 4<5)
print(3>4 or 4<5)
print(not 3>4)
结果如下:
可以看到3>5 and 4<5返回false;3>4 or 4<5返回true;not 3>4返回 true.
极速赛车五码稳赢技巧 static void main(String[] args) {
// TODO 自动生成的方法存根
System.out.println(3==3.0);
}
}
运行结果如下
:
在python中的代码:
[python] view plaincopy
print(3==3.0);
运行结果如下
:
嘿嘿,其实在python和java中,3和3.0虽然数据类型不同,但比较的只是值是否大小一样,所
以返回的都是true.
(4)逻辑运算符(如:and、or、not);
虽然java和python在逻辑运算符的表达形式上有所差异,但所要表达的思想是相通的;比如:and就相当于java中的&&,or相当于java中的||,not相当于java中的取非!。
代码如下:
[python] view plaincopy
print(3>4 and 4<5)
print(3>4 or 4<5)
print(not 3>4)
结果如下:
可以看到3>5 and 4<5返回false;3>4 or 4<5返回true;not 3>4返回 true.