赞
踩
MATH库
ceil(x) 对浮点数向上取整
floor(x) 对浮点数向下取整
pow(x,y) 计算x的y次方
log(x) 以e为基的对数
log10(x) 以10为基的对数
sqrt(x) 平方根
exp(x) e的x次幂
degrees(x) 将弧度值转换成角度
radians(x) 将角度值转换成弧度
sin(x) 正弦函数
cos(x)余弦函数
tan(x) 正切函数
asin(x) arcsin x 反正弦函数,x ∊[-1.0,1.0]
acos(x) arccos x 反余弦函数,x ∊[-1.0,1.0]
atan(x) arctan x 反正切函数,x ∊[-1.0,1.0]
random库
seed(x) 给随机数一个种子值,默认随机种子是系统时钟
random() 生成一个[0, 1.0)之间的随机小数
uniform(a,b) 生成一个a到 b之间的随机小数
randint(a,b) 生成一个a到 b之间的随机整数
randrange(a,b,c) 随机生成一个从a开始到b以c递增的数
choice(<list>) 从列表中随机返回一个元素
shuffle(<list>)将列表中元素随机打乱
sample(<list>,k)从指定列表随机获取k个元素
当设定相同的种子后,每次调用随机函数后生成的随机 数都是相同的。这就是随机种子的作用。
因为计算机是一个确定设备,不能生成真正的随机数。所以,由计算机产生的随机数都是由一个种子开始的伪随机序列。相同的随机种子产生相同的伪随机数序列,也有利于程序的验证执行。
利用蒙特卡洛方法计算π值:
程序如下:
# pi.py
from random import random
from math import sqrt
from time import clock
DARTS = 1200
hits = 0
clock()
for i in range(1,DARTS):
x, y = random(), random()
dist = sqrt(x**2 + y**2)
if dist <= 1.0:
hits = hits + 1
pi = 4 * (hits/DARTS)
print("Pi的值是 %s" % pi)
print("程序运行时间是 %-5.5ss" % clock())
解释:输入:抛点的数量
处理:对于每个抛洒点,计算点到圆心的距离,通过距离判断该点在圆内或是圆外。统计在圆内点的数量和矩形内的数量,求比值
输出:π值
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。