#小智的智商从去年的100分提升到今年的132分,请计算小智智商提升的百分比,并用字符串格式化显示出“xx.x%”的形式,保留一位小数
十余年的集宁网站建设经验,针对设计、前端、开发、售后、文案、推广等六对一服务,响应快,48小时及时工作处理。营销型网站建设的优势是能够根据用户设备显示端的尺寸不同,自动调整集宁建站的显示方式,使网站能够适用不同显示终端,在浏览器中调整网站的宽度,无论在任何一种浏览器上浏览网站,都能展现优雅布局与设计,从而大程度地提升浏览体验。创新互联建站从事“集宁网站设计”,“集宁网站推广”以来,每个客户项目都认真落实执行。
lastYearIQ = 100
thisYearIQ = 132
growthRateIQ = (thisYearIQ-lastYearIQ)/lastYearIQ
print('小智智商今年比去年提高了%.1f%%'%(growthRateIQ*100))
#输出:小智智商今年比去年提高了32.0%
1. 你可能会喜欢SciPy的统计软件包。它有百分函数你之后,许多其他统计好吃的东西。
此票证相信他们不会被整合percentile()到numpy的很快。
2.
顺便说一句,有百分函数的纯Python,万一一个不希望依赖于SciPy的。具体函数如下复制:
## {{{ CodeGo.net (r1)
import math
import functools
def percentile(N, percent, key=lambda x:x):
"""
Find the percentile of a list of values.
@parameter N - is a list of values. Note N MUST BE already sorted.
@parameter percent - a float value from 0.0 to 1.0.
@parameter key - optional key function to compute value from each element of N.
@return - the percentile of the values
"""
if not N:
return None
k = (len(N)-1) * percent
f = math.floor(k)
c = math.ceil(k)
if f == c:
return key(N[int(k)])
d0 = key(N[int(f)]) * (c-k)
d1 = key(N[int(c)]) * (k-f)
return d0+d1
# median is 50th percentile.
median = functools.partial(percentile, percent=0.5)
## end of CodeGo.net }}}
3.
检查scipy.stats模块:
scipy.stats.scoreatpercentile
4.
import numpy as np
a = [154, 400, 1124, 82, 94, 108]
print np.percentile(a,95) # gives the 95th percentile
5.
百分看到定义预期结果从提供的列表,低于该值的百分之P被发现的价值。为了得到这一点,你一个简单的函数。
def percentile(N, P):
"""
Find the percentile of a list of values
@parameter N - A list of values. N must be sorted.
@parameter P - A float value from 0.0 to 1.0
@return - The percentile of the values.
"""
n = int(round(P * len(N) + 0.5))
return N[n-1]
# A = (1, 2, 3, 4, 5, 6, 7, 8, 9, 10)
# B = (15, 20, 35, 40, 50)
#
# print percentile(A, P=0.3)
# 4
# print percentile(A, P=0.8)
# 9
# print percentile(B, P=0.3)
# 20
# print percentile(B, P=0.8)
# 50
如果您宁愿从处于或低于该值的百分之P被发现所提供的列表中获得的价值,这个简单的修改:
def percentile(N, P):
n = int(round(P * len(N) + 0.5))
if n 1:
return N[n-2]
else:
return 0
6.
numpy.percentile
在那里我很想念?
7.
size=len(mylist)
p5=mylist[math.ceil((size*5)/100)-1]
p25=mylist[math.ceil((size*25)/100)-1]
p50=mylist[math.ceil((size*50)/100)-1]
p75=mylist[math.ceil((size*75)/100)-1]
p95=mylist[math.ceil((size*95)/100)-1]
例如输入 10%
a=input('请输入百分比:')
请输入百分比:'10%'
a
方式1:参数格式化:{:.2%}、{:.1%}、{:.0%}
{:.2%}: 显示小数点后2位
print('percent: {:.2%}'.format(10/50))
percent: 25.00%
print('percent: {:.1%}'.format(10/50))
percent: 25.0%
print('percent: {:.0%}'.format(10/50))
percent: 25%
方式2:先格式化为float,再处理成%格式: {:.2f}%、{:.1f}%、 {:.0f}%
print('percent: {:.2f}%'.format(10/50*100))
percent: 25.00%
print('percent: {:.0f}%'.format(10/50*100))
percent: 25%
特别说明
方式二相对于方式一,把%提到{}外,但计算值的时候必须乘以100
个人认为,format是最好用的格式输出方法。
利用format将" 小数转为对应的百分数 "输出的操作如下:
说明:{:%}用来将小数转换为百分数,其中的.2是保留两位小数。所以{:.2%}就是:将小数转为对应的百分数,并保留两位小数输出。
Format为CString类的一个成员函数,它通过格式操作使任意类型的数据转换成一个字符串Format里面可以写普通的字符串,比如“mynameis”,但有些格式指令字符具有特殊意义,比如“%6s”。
Format(表达式[,格式字符串])其中,表达式:要格式化的数值、日期或字符串表达式。格式字符串:指定表达式的值的输出格式。格式字符有三类:数值格式、日期格式和字符串格式。格式字符要加引号。
方法如下:
1、首先按下“Win+R”组合键,打开运行窗口。
2、在打开文本框输入“cmd”,点击确定。
3、在打开的cmd窗口中,输入:“python”,点击Enter键。
4、在Python环境中,输入:“x = format(0.5, '%')”,点击Enter键。
5、在Python环境中,输入:“print(x)”。
6、点击Enter键,即可使用Python内置的format函数把数字0.5格式化为百分比值。