您所在的位置: 首页 > 开发 > Web > Python >

循序渐进学Python之数值类型(一)(2)

http://developer.51cto.com  2008-08-01 10:02  宇文  51CTO  我要评论(0)
  • 摘要:本文将介绍Python语言的一种基本数据类型:数值类型。首先,我们会详细介绍Python语言各种数值类型以及相应的算术运算和它们的优先级、结合性。然后,我们还会对整型的位运算做深入的解释。
  • 标签:Python  Python入门  Python教程  Python数值类型

二、算术运算符

对于数值型数据,常见的算术运算有加法、减法、乘法、除法,以及求幂和取模等,这些运算所对应的运算符分别为:

 加法运算符:+,例如代数表达式2+3的Python表达式为2 + 3;
 减法运算符:-,例如代数表达式2-3的Python表达式为2 - 3;
 乘法运算符:*,例如代数表达式2×3的Python表达式为2 * 3;
 除法运算符:/和//,例如代数表达式2÷3的Python表达式为2 / 3或2 // 3;
 求幂运算符:**,例如代数表达式23的Python表达式为2 ** 3;
 取模运算符:%,例如代数表达式2mod3的Python表达式为2 % 3;

在早期的版本中,Python只有一个除法运算符即/,该运算符既用于整除法,又用于真除法,这由参与运算的操作数的类型决定。具体而言,如果操作数皆为整数,那么就进行整除法运算,即两数相除后之后,只取其商的整数部分,并丢弃小数部分,不进行进位处理;此外,如果操作数中只要有一个为浮点数,那么就进行真除法运算,即得到的结果是一个精确的浮点数,包括小数点之后的数字。

从Python2.2开始,除法运算符除了/之外,又引入了一个除法运算符://,后一种运算符只用于进行整除法。对于除法运算符/,默认时的行为跟Python2.2之前的一样,它视操作数而定,既可以进行整除,也可以进行真除法。如果想让这两个运算符有一个明确的分工,即/只用于真除法,而//仅用于整除法的话,需要作以下声明:

from __future__ import division

下图显示了两种除法运算符在作以上声明前后的区别:

Python

图3:两种除法运算符的用法举例

如上图所示,在声明之前,对表达式2/3进行计算时,结果为0,这是因为参加运算的两个操作数都是整数,所以运算符/进行的是整除法,但是表达式2.0/3的结果却是0.66666666666666663,这是因为操作数中的2.0是浮点数,所以运算符/进行的是真除法。表达式2//3和2.0//3进行求值时,进行的都是整除法,只不过返回值一个是整型,一个是浮点型而已。当我们用import语句进行相应的声明后,除法运算符/只能用于真除法,所以此时2/3和2.0//3的返回值都是0.66666666666666663。


共4页: 上一页 [1] 2 [3] [4] 下一页
【内容导航】
 第 1 页:一、 数值类型  第 2 页:二、算术运算符
 第 3 页:三、不同数值型数据间的混合运算  第 4 页:四、算术表达式的求值顺序
Python实用开发指南
JSP开发基础教程
PHP开发基础入门
深入Vista应用程序开发
走向银光 —— 一步一步学Silverlight2
 
 验证码: (点击刷新验证码)   匿名发表
  • 网络工程师考试案例动手实验营

  • 作者:郭春柱
  • 本书依据2009年版《网络工程师考试大纲》的考核要求,深入研究了历年网络工程师考试试题的命题风格和试题结构,对考查的知识点..
Copyright©2005-2008 51CTO.COM 版权所有