Python常见数字运算操作实例小结

本文实例讲述了Python常见数字运算操作。分享给大家供大家参考,具体如下:

Python 解释器可以作为一个简单的计算器:您可以在解释器里输入一个表达式,它将输出表达式的值。

表达式的语法很直白: +, -, * 和/ 和在许多其它语言(如Pascal或C)里一样;括号可以用来为运算分组。例如:

>>> 2 + 2
4
>>> 50 - 5*6
20
>>> (50 - 5*6) / 4
5.0
>>> 8 / 5 # 总是返回一个浮点数
1.6

注意:在不同的机器上浮点运算的结果可能会不一样。之后我们会介绍有关控制浮点运算输出结果的内容。

PS:上述显示结果为Python3环境下进行的测试。Python2.7环境下会根据原有数据类型得出对应类型的结果,如8/5会得到整数结果1,注意,这里得到的结果为整数部分,不会四舍五入!

在整数除法中,除法(/)总是返回一个浮点数,如果只想得到整数的结果,丢弃可能的分数部分,可以使用运算符 // :

>>> 17 / 3 # 整数除法返回浮点型
5.666666666666667
>>> 17 // 3 # 整数除法返回向下取整后的结果
5
>>> 17 % 3 # %操作符返回除法的余数
2
>>> 5 * 3 + 2 17

等号('=')用于给变量赋值。赋值之后,除了下一个提示符,解释器不会显示任何结果。

>>> width = 20
>>> height = 5*9
>>> width * height
900

Python 可以使用**操作来进行幂运算:

>>> 5 ** 2 # 5 的平方
25
>>> 2 ** 7 # 2的7次方
128
>>> 27**(1/3) # 27 开立方
3.0
>>> 9**0.5 # 9 开平方
3.0

变量在使用前必须先"定义"(即赋予变量一个值),否则会出现错误:

>>> # 尝试访问一个未定义的变量
 ... n
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
NameError: name 'n' is not defined

浮点数得到完全的支持;不同类型的数混合运算时会将整数转换为浮点数:

>>> 3 * 3.75 / 1.5
7.5
>>> 7.0 / 2
3.5

在交互模式中,最后被输出的表达式结果被赋值给变量 _ 。这能使您在把Python作为一个桌面计算器使用时使后续计算更方便,例如:

>>> tax = 12.5 / 100
>>> price = 100.50
>>> price * tax
12.5625
>>> price + _
113.0625
>>> round(_, 2)
113.06

此处, _ 变量应被用户视为只读变量。不要显式地给它赋值——这样您将会创建一个具有相同名称的独立的本地变量,并且屏蔽了这个内置变量的功能。

另:浮点数还可以有简写形式,如:0.5可以直接去掉整数部分的0,简写为.5

例:

>>> 9**.5 # 9 开平方
3.0

附:不同进制表示方法

二进制 0b开头,如:0b11表示十进制3
八进制 0o开头,如:0o12表示十进制10
十六进制 0x开头,如:0x10表示十进制16

示例:

>>> 0b11
3
>>> 0o12
10
>>> 0x10
16

更多关于Python相关内容感兴趣的读者可查看本站专题:《Python数学运算技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总》

希望本文所述对大家Python程序设计有所帮助。

(0)

相关推荐

  • Python双精度浮点数运算并分行显示操作示例

    本文实例讲述了Python双精度浮点数运算并分行显示操作.分享给大家供大家参考,具体如下: #coding=utf8 def doubleType(): ''''' Python中的浮点数是双精度浮点数,可以用十进制或科学计数法表示. 实际精度依赖于机器架构和创建Python解释器的编译器. 浮点数值通常都有一个小数点和一个可选的后缀e(大写或小写,表示科学计数法). 在e和指数之间可以用正(+)或负(-)表示指数的正负(正数可以省略符号) ''' (one,two,three,four,fiv

  • Python实现1-9数组形成的结果为100的所有运算式的示例

    问题: 编写一个在1,2,-,9(顺序不能变)数字之间插入+或-或什么都不插入,使得计算结果总是100的程序,并输出所有的可能性.例如:1 + 2 + 34–5 + 67–8 + 9 = 100. from functools import reduce operator = { 1: '+', 2: '-', 0: '' } base = ['1', '2', '3', '4', '5', '6', '7', '8', '9'] def isHundred(num): #转化为8位3进制数,得

  • Python中数字以及算数运算符的相关使用

    Python数字 数字数据类型用于存储数值. 他们是不可改变的数据类型,这意味着改变数字数据类型会分配一个新的对象. 当你指定一个值时,Number对象就会被创建: var1 = 1 var2 = 10 您也可以使用del语句删除一些对象引用. del语句的语法是: del var1[,var2[,var3[....,varN]]]] 您可以通过使用del语句删除单个或多个对象.例如: del var del var_a, var_b Python支持四种不同的数值类型: int(有符号整型)

  • Python中的浮点数原理与运算分析

    本文实例讲述了Python中的浮点数原理与运算.分享给大家供大家参考,具体如下: 先看一个违反直觉的例子: >>> s = 0. >>> for i in range(10): s += .1 >>> s 0.9999999999999999 # 错误被累加 再看一个更为普遍,直接影响判断逻辑的例子: >>> from math import sqrt >>> a = sqrt(2) >>> a*a

  • Python复数属性和方法运算操作示例

    本文实例讲述了Python复数属性和方法运算操作.分享给大家供大家参考,具体如下: #coding=utf8 ''''' 复数是由一个实数和一个虚数组合构成,表示为:x+yj 一个负数时一对有序浮点数(x,y),其中x是实数部分,y是虚数部分. Python语言中有关负数的概念: 1.虚数不能单独存在,它们总是和一个值为0.0的实数部分一起构成一个复数 2.复数由实数部分和虚数部分构成 3.表示虚数的语法:real+imagej 4.实数部分和虚数部分都是浮点数 5.虚数部分必须有后缀j或J 复

  • 用Python做的数学四则运算_算术口算练习程序(后添加减乘除)

    最近着迷上了 Python 用Python给小宝做的数学算数口算练习程序(2015年1月添加四则运算)! 给小宝做的口算游戏: #用Python给小宝做的数学算数口算练习程序(2015年1月添加四则运算)! #给小宝做的口算游戏: import string import random input=11 nums=10 num=0 righ1t=0 #分数# flagwrong=0 #没错过 print e[1;34mThis text is bold blue.e[0m print 一共有%d

  • 举例讲解Python中的算数运算符的用法

    下表列出了所有Python语言支持的算术运算符.假设变量a持有10和变量b持有20,则: 例子: 试试下面的例子就明白了所有的Python编程语言提供了算术运算符: #!/usr/bin/python a = 21 b = 10 c = 0 c = a + b print "Line 1 - Value of c is ", c c = a - b print "Line 2 - Value of c is ", c c = a * b print "Li

  • Python中的数学运算操作符使用进阶

    Python中对象的行为是由它的类型 (Type) 决定的.所谓类型就是支持某些特定的操作.数字对象在任何编程语言中都是基础元素,支持加.减.乘.除等数学操作. Python的数字对象有整数和浮点数,支持各种数学操作,比如+, -,*, /等. 没有这些操作符,程序中只能使用函数调用的方式进行数学运算,比如add(2, 3), sub(5, 2). 程序中操作符的作用与普通数学操作的用法是一致的,使用中更加简便直观.Python中,这些操作符实现是通过定义一些object的特殊方法实现的,比如o

  • Python编程实现数学运算求一元二次方程的实根算法示例

    本文实例讲述了Python编程实现数学运算求一元二次方程的实根算法.分享给大家供大家参考,具体如下: 问题: 请定义一个函数quadratic(a, b, c),接收3个参数,返回一元二次方程:ax² + bx + c = 0的两个解. 实现代码: #!/usr/bin/env python # -*- coding: utf-8 -*- import math def quadratic(a,b,c): if a == 0: raise TypeError('a不能为0') if not is

  • python中实现精确的浮点数运算详解

    为什么说浮点数缺乏精确性? 在开始本文之前,让我们先来谈谈浮点数为什么缺乏精确性的问题,其实这不是Python的问题,而是实数的无限精度跟计算机的有限内存之间的矛盾. 举个例子,假如说我只能使用整数(即只精确到个位,计算机内的浮点数也只有有限精度,以C语言中的双精度浮点数double为例,精度为52个二进制位),要表示任意实数(无限精度)的时候我就只能通过舍入(rounding)来近似表示. 比如1.2我会表示成1,2.4表示成2,3.6表示成4. 所以呢? 在算1.2 - 1.2的时候,由于计

  • Python对小数进行除法运算的正确方法示例

    求一个算式 复制代码 代码如下: a=1 b=2 c=3   print c*(a/b) 运行结果总是0,反复检查拆开以后,发现在Python里,整数初整数,只能得出整数. 也就是 a 除 b 这个结果永远是0,只要把a或者b其中一个数改成浮点数即可. 复制代码 代码如下: a=1 b=2 c=3   print c*(a/float(b)) print c*(float(a)/b) 这样才能准确算出a除b的正确结果,当然,如果a比b大,并且不需要小数位数部分可以不用float. 如: 复制代码

随机推荐