python小数点保留1位(如何在Python中保留小数)

1.如何在Python中保留小数

f = lambda x, n: round(x, n - len(str(int(x))));

定义了一个方法f,用来实现你所说的功能。

输入:

f(123.456789, 8)

输出:

123.45678

输入:

f(1.23456789, 8)

输出:

1.2345679000000001

f接收2个参数,第一个参数是要求有效位数的数字,第二个参数是设置有效位数。第二次输出中的数字不够准确,这跟python处理小数的方式有关,如果想要准确的数字可以使用python decimal类。或者用python3k

扩展资料

#include <stdio.h>

#define C "C Programming"int main(void)

{

int a=12345;float b=5.12345678;

char e,d,f;

scanf("%c %c %c",&e,&d,&f);

printf("int is:%d\n",a);

printf("float is:%f\n",b);

printf("char is:%s\n",C); return 0;

}

1,对于浮点数

a=1.36852

a=round(a,2)

print a

#结果1.36

2,对于整数

from decimal import Decimal

a=1

a=Decimal(a).quantize(Decimal('0.00'))

print a

#结果1.00

3,通用方法

a=1

a=("%.2f" % a)

print a

#结果1.00

参考资料:搜狗百科 Python

搜狗百科 printf

2.python中保留几位小数进行四舍五入的round函数自身的源代码是什么

它是内置函数。build-in,应该是C语言的。用的应该是 c的library

在python2.73.源码中

有这样一句。pymath.h:extern double round(double);

在pymath.c中定义如下:

#ifndef HAVE_ROUND

double

round(double x)

{

double absx, y;

absx = fabs(x);

y = floor(absx);

if (absx - y >= 0.5)

y += 1.0;

return copysign(y, x);

}

3.Python编程 输入一个小数,对第三位小数进行四舍五入 保留两位小数

float M;//输入的小数

unsigned int x1 = (unsigned int)(M - (int)M) * 10;

unsigned int x2 = (unsigned int)(M - (int)M) * 100%10;

unsigned int x3 = (unsigned int)(M - (int)M) * 1000%10;

if(x3 >= 5)

{

x2 += 1;

}

M = (int)M + ((float)x1)/10 + ((float)x2)/100;

4.python 如何控制输出的小数长度

Python里面小数点长度精度控制方法: 一、要求较小的精度 将精度高的浮点数转换成精度低的浮点数。

1.round()内置方法 这个是使用最多的,刚看了round()的使用解释,也不是很容易懂。round()不是简单的四舍五入的处理方式。

For the built-in types supporting round(), values are rounded to the closest multiple of 10 to the power minus ndigits; if two multiples are equally close, rounding is done toward the even choice (so, for example, both round(0.5) and round(-0.5) are 0, and round(1.5) is 2). >>> round(2.5) 2 >>> round(1.5) 2 >>> round(2.675) 3 >>> round(2.675, 2) 2.67 round()如果只有一个数作为参数,不指定位数的时候,返回的是一个整数,而且是最靠近的整数(这点上类似四舍五入)。但是当出现.5的时候,两边的距离都一样,round()取靠近的偶数,这就是为什么round(2.5) = 2。

当指定取舍的小数点位数的时候,一般情况也是使用四舍五入的规则,但是碰到.5的这样情况,如果要取舍的位数前的小树是奇数,则直接舍弃,如果偶数这向上取舍。看下面的示例: >>> round(2.635, 2) 2.63 >>> round(2.645, 2) 2.65 >>> round(2.655, 2) 2.65 >>> round(2.665, 2) 2.67 >>> round(2.675, 2) 2.67 2. 使用格式化 效果和round()是一样的。

>>> a = ("%.2f" % 2.635) >>> a '2.63' >>> a = ("%.2f" % 2.645) >>> a '2.65' >>> a = int(2.5) >>> a 2 二、要求超过17位的精度分析 python默认的是17位小数的精度,但是这里有一个问题,就是当我们的计算需要使用更高的精度(超过17位小数)的时候该怎么做呢? 1. 使用格式化(不推荐) >>> a = "%.30f" % (1/3) >>> a '0.' 可以显示,但是不准确,后面的数字往往没有意义。 2. 高精度使用decimal模块,配合getcontext >>> from decimal import * >>> print(getcontext()) Context(prec=28, rounding=ROUND_HALF_EVEN, Emin=-999999, Emax=999999, capitals=1, clamp=0, flags=[], traps=[InvalidOperation, DivisionByZero, Overflow]) >>> getcontext().prec = 50 >>> b = Decimal(1)/Decimal(3) >>> b Decimal('0.') >>> c = Decimal(1)/Decimal(17) >>> c Decimal('0.') >>> float(c) 0.058823529411764705 默认的context的精度是28位,可以设置为50位甚至更高,都可以。

这样在分析复杂的浮点数的时候,可以有更高的自己可以控制的精度。其实可以留意下context里面的这rounding=ROUND_HALF_EVEN 参数。

ROUND_HALF_EVEN, 当half的时候,靠近even. 三、关于小数和取整 既然说到小数,就必然要说到整数。一般取整会用到这些函数: 1. round() 这个不说了,前面已经讲过了。

一定要注意它不是简单的四舍五入,而是ROUND_HALF_EVEN的策略。 2. math模块的ceil(x) 取大于或者等于x的最小整数。

3. math模块的floor(x) 去小于或者等于x的最大整数。 >>> from math import ceil, floor >>> round(2.5) 2 >>> ceil(2.5) 3 >>> floor(2.5) 2 >>> round(2.3) 2 >>> ceil(2.3) 3 >>> floor(2.3) 2 >>>。

5.python 怎么保留2位小数

import decimal

a = '12.11111'

decimal.Decimal(a).quantize(decimal.Decimal('0.01'))

Decimal('12.11')

>>> import decimal>>> a = 1>>> b = decimal.Decimal(a).quantize(decimal.Decimal('0.01'))>>> bDecimal('1.00')>>> print b1.00 怎么格式全乱了- -#! usr/bin/env python#coding:utf-8 from decimal import Decimal #======================================================= inputdef dataInput(): again=0 while again==0: try: price = raw_input('Price of purchase is ') payment = raw_input('How much you pay? ') price=Decimal(price.strip()).quantize(Decimal('0.01')) payment=Decimal(payment.strip()).quantize(Decimal('0.01')) if payment>price: again=1 else: print 'The payment must greater then the price' except Exception, e: print e print 'Bad purchase number!' return price,payment#=========================================================== calculate pricedef calculateChange(price,payment): change=payment-price return change#========================================================= print def convert(money): if not isinstance(money, Decimal): return 'error' money = str(money) yuan, jiao_fen = money.split('.') jiao, fen = jiao_fen[0], jiao_fen[1] return '找零: %s元%s角%s分' % (yuan, jiao, fen) def printResults(): price, payment = dataInput() change = calculateChange(price, payment) print 'Amount of purchase: %s' % price print 'Payment: %s' % payment print 'Amount of change: %s' % change print convert(change) #======================================================main module if __name__ == '__main__': printResults()

6.python当中如何确定一个数有几位小数

判定是否为数字方法一:

try:

float(s)

return True

exceptValueError:

pass

try:

importunicodedata

unicodedata.numeric(s)

return True

except (TypeError

, ValueError):

pass

return False

方法二:普通十进制正常处理

对于非十进制还需要更复杂的方法,不过这里不讨论,只讨论普通十进制数的影响。

十进制数格式一般有以下几种(整数、小数、科学计数法):

+123 [符号位][数字]

-123.123 [符号位][小数点][数字]

+123E+123 [整数或小数][E或者D,大小写皆可][整数]

7.python float类型怎么保留2位小数 比如1.0转化为1.00

如果你按照ls说的,v是一个数组,不能直接float,你要在的就是

x = map(float,v)

catalogue.append(x)

还有一种方法,就是

print exec(catalogue[0][14]+'-'+catalogue[0][24])

其中catalogue[0][14]+'-'+catalogue[0][24] 是一串字符

exec就是可以执行str类型的语句比如 print exec('1+2')

最后一种最简单的

print float(catalogue[0][14])-float(catalogue[0][24])

python小数点保留1位

转载请注明出处代码入门网 » python小数点保留1位(如何在Python中保留小数)

资讯

python数据采集教程(如何用最简单的Python爬虫采集整个网站)

阅读(26)

本文主要为您介绍python数据采集教程,内容包括如何用最简单的Python爬虫采集整个网站,python做监控数据采集,怎么做.新手请教,如何学习爬虫技术抓取数据。在之前的文章中Python实现“维基百科六度分隔理论“之基础爬虫,我们实现了在一个网站

资讯

python秒数转时间(python将这个时间格式转化为秒数)

阅读(39)

本文主要为您介绍python秒数转时间,内容包括python将这个时间格式转化为秒数,Python函数将秒到分钟,小时,天问题,怎么解决,利用Python怎么得到现在时间的秒数并转换为整型。先把时间格式“1:23:20:27.00” 转化为字符串s1="1:23:20:27.00"#a=

资讯

pythonstdcall(python生成shellcode库有哪些)

阅读(83)

本文主要为您介绍pythonstdcall,内容包括python生成shellcode库,python怎么安装xlrd,我会Python,且第三方系统有接口,我应该如何通过Python去调用第。python中有个概念叫模块,模块中包含了定义的函数,方便重用。使用模块的语句如下:import 模

资讯

python是否可迭代(python判断是否能够迭代)

阅读(27)

本文主要为您介绍python是否可迭代,内容包括python里哪些是可迭代对象,python判断是否能够迭代,python判断是否能够迭代。方法是通过collections模块的Iterable类型判断:>>> from collections import Iterable

资讯

python库知乎(python图像处理库哪个好知乎)

阅读(80)

本文主要为您介绍python库知乎,内容包括python图像处理库哪个好知乎,python图像处理库哪个好知乎,Python常用的标准库以及第三方库。#coding:utf-8#使用的库import csv,os,sysimport xlwt,xlrdfrom xlrd import

资讯

python动态实例化(python的类中怎么实现动态化函数)

阅读(42)

本文主要为您介绍python动态实例化,内容包括python的类中怎么实现动态化函数,python类实例化,Python中类是怎么实例化的为什么在创建实例之后还能添加属性。给你这样一个例子吧,这个例子里面有动态增加类的函数。声明一个类,类初始化的时候读

资讯

python开发游戏脚本(游戏开发中常用哪种脚本语言)

阅读(75)

本文主要为您介绍python开发游戏脚本,内容包括python怎么写游戏脚本,python怎么写游戏脚本,python可以做游戏吗。一般大型的商业游戏引擎有自己的脚本语言,比如Unreal3就有自己的一套Unreal Script ,Unity3d可以用C#、Java

资讯

python写入文件编码格式(python2.7.4怎么指定格式编码的文本)

阅读(11)

本文主要为您介绍python写入文件编码格式,内容包括python写文件怎么写gbk编码的文件,python2.7.4怎么指定格式编码的文本,python2.7.4怎么指定格式编码的文本。要写入的数据本身就是byte串(u中文是中文字符串,中文是byte串),用二进制方式打开就

资讯

python画仪表(如何使用Python在屏幕上作画)

阅读(13)

本文主要为您介绍python画仪表,内容包括如何用python绘制各种图形,如何用Python绘制Circos图,如何使用Python在屏幕上作画。from turtle import *def curvemove():for i in range(200):right(1)forw

资讯

python判定整数(怎样用python判断整数)

阅读(15)

本文主要为您介绍python判定整数,内容包括python怎么判断一个数是整数,python判断一个数是不是整数,python判断一个数是不是整数。import typesif type(var) in [types.IntType,types.LongType]: bodyelse

资讯

python3好书(python三本经典书籍都是什么)

阅读(16)

本文主要为您介绍python3好书,内容包括python三本经典书籍都是什么,学习python3都好的书,求本适合学习python3.2的书或者电子版资料。python三本经典书籍有:《深度学习入门:基于Python的理论与实现》,《Python高性能(第2版)》,《Python科学计算最

资讯

python3.4爬虫入门(如何入门Python爬虫)

阅读(13)

本文主要为您介绍python3.4爬虫入门,内容包括如何入门Python爬虫,python爬虫入门需要哪些基础,python爬虫自学要多久。可以先从简单的开始,在熟悉了Python语法后,学习用 urllib 和 urllib2 爬虫,使用 BeautifulSoup 分析结

资讯

python数据采集教程(如何用最简单的Python爬虫采集整个网站)

阅读(26)

本文主要为您介绍python数据采集教程,内容包括如何用最简单的Python爬虫采集整个网站,python做监控数据采集,怎么做.新手请教,如何学习爬虫技术抓取数据。在之前的文章中Python实现“维基百科六度分隔理论“之基础爬虫,我们实现了在一个网站

资讯

python秒数转时间(python将这个时间格式转化为秒数)

阅读(39)

本文主要为您介绍python秒数转时间,内容包括python将这个时间格式转化为秒数,Python函数将秒到分钟,小时,天问题,怎么解决,利用Python怎么得到现在时间的秒数并转换为整型。先把时间格式“1:23:20:27.00” 转化为字符串s1="1:23:20:27.00"#a=

资讯

pythonstdcall(python生成shellcode库有哪些)

阅读(83)

本文主要为您介绍pythonstdcall,内容包括python生成shellcode库,python怎么安装xlrd,我会Python,且第三方系统有接口,我应该如何通过Python去调用第。python中有个概念叫模块,模块中包含了定义的函数,方便重用。使用模块的语句如下:import 模

资讯

python是否可迭代(python判断是否能够迭代)

阅读(27)

本文主要为您介绍python是否可迭代,内容包括python里哪些是可迭代对象,python判断是否能够迭代,python判断是否能够迭代。方法是通过collections模块的Iterable类型判断:>>> from collections import Iterable

资讯

python库知乎(python图像处理库哪个好知乎)

阅读(80)

本文主要为您介绍python库知乎,内容包括python图像处理库哪个好知乎,python图像处理库哪个好知乎,Python常用的标准库以及第三方库。#coding:utf-8#使用的库import csv,os,sysimport xlwt,xlrdfrom xlrd import

资讯

python动态实例化(python的类中怎么实现动态化函数)

阅读(42)

本文主要为您介绍python动态实例化,内容包括python的类中怎么实现动态化函数,python类实例化,Python中类是怎么实例化的为什么在创建实例之后还能添加属性。给你这样一个例子吧,这个例子里面有动态增加类的函数。声明一个类,类初始化的时候读

资讯

python开发游戏脚本(游戏开发中常用哪种脚本语言)

阅读(75)

本文主要为您介绍python开发游戏脚本,内容包括python怎么写游戏脚本,python怎么写游戏脚本,python可以做游戏吗。一般大型的商业游戏引擎有自己的脚本语言,比如Unreal3就有自己的一套Unreal Script ,Unity3d可以用C#、Java

资讯

python2.764位pil(win764位怎么安装python和nltk)

阅读(29)

本文主要为您介绍python2.764位pil,内容包括win764位系统安装了python2.7又安装了PIL第三方64位模块在使用时,win764位怎么安装python和nltk,python哪个版本可以加pil。你装的是什么版本的python。如果你是2.7版本,并且电脑是64位机器。建议