基于Python计算圆周率pi代码实例


Posted in Python onMarch 25, 2020

一 计算公式:

基于Python计算圆周率pi代码实例

二 实现代码

(1)

import math
from tqdm import tqdm
import time
total,s,n,t=0.0,1,1.0,1.0
while(math.fabs(t)>=1e-6):
  total+=t
  n+=2
  s=-s
  t=s/n
k=total*4
print("π值是{:.10f} 运行时间为{:.4f}秒".format(k,time.clock()))
for i in tqdm(range(101)):
  print("\r{:3}%".format(i),end="")
  time.sleep(0.1)

(2)

import time
import math
 
 
class Index(object):
  def __init__(self, number=50, decimal=2):
    self.decimal = decimal
    self.number = number
    self.a = 100/number 
 
  def __call__(self, now, total):
    percentage = self.percentage_number(now, total)
    well_num = int(percentage / self.a)
    progress_bar_num = self.progress_bar(well_num)
    result = "\r%s %s" % (progress_bar_num, percentage)
    return result
 
  def percentage_number(self, now, total):
    return round(now / total * 100, self.decimal)
 
  def progress_bar(self, num):
    well_num = "#" * num
    space_num = " " * (self.number - num)
    return '[%s%s]' % (well_num, space_num)
index = Index()
total,s,n,t=0.0,1,1.0,1.0
while(math.fabs(t)>=1e-6):
  total+=t
  n+=2
  s=-s
  t=s/n
k=total*4
start = 371
for i in range(start + 1):
  print(index(i, start), end='')
  time.sleep(0.01)
print("\n π值是{:.10f}".format(k))

(3)

import time
import math
total,s,n,t=0.0,1,1.0,1.0
while(math.fabs(t)>=1e-6):
  total+=t
  n+=2
  s=-s
  t=s/n
k=total*4
scale=50
print("".center(scale//2,"-"))
start = time.perf_counter()
for i in range(scale+1):
  a="*"*i
  b="."*(scale-i)
  c=(i/scale)*100
  d=time.perf_counter() - start
  print("\r{:^3.0f}%[{}->{}]{:.2f}s".format(c,a,b,d),end='')
  time.sleep(0.1)
print("\n π值是{:.10f}".format(k))

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python通过poll实现异步IO的方法
Jun 04 Python
python利用Guetzli批量压缩图片
Mar 23 Python
Python内建函数之raw_input()与input()代码解析
Oct 26 Python
Python抓取框架Scrapy爬虫入门:页面提取
Dec 01 Python
python tensorflow学习之识别单张图片的实现的示例
Feb 09 Python
python opencv人脸检测提取及保存方法
Aug 03 Python
详解pandas安装若干异常及解决方案总结
Jan 10 Python
Python开发之Nginx+uWSGI+virtualenv多项目部署教程
May 13 Python
图文详解Django使用Pycharm连接MySQL数据库
Aug 09 Python
Python上下文管理器用法及实例解析
Nov 11 Python
Python实现线性判别分析(LDA)的MATLAB方式
Dec 09 Python
python 已知三条边求三角形的角度案例
Apr 12 Python
Python异常原理及异常捕捉实现过程解析
Mar 25 #Python
Python导入模块包原理及相关注意事项
Mar 25 #Python
Python脚本导出为exe程序的方法
Mar 25 #Python
Python实现猜年龄游戏代码实例
Mar 25 #Python
python读取mysql数据绘制条形图
Mar 25 #Python
Python环境下安装PyGame和PyOpenGL的方法
Mar 25 #Python
python画环形图的方法
Mar 25 #Python
You might like
全国FM电台频率大全 - 20 广西省
2020/03/11 无线电
Protoss热键控制
2020/03/14 星际争霸
Ubuntu server 11.04安装memcache及php使用memcache来存储session的方法
2016/05/31 PHP
Ext JS 4实现带week(星期)的日期选择控件(实战一)
2013/08/21 Javascript
javascript版的in_array函数(判断数组中是否存在特定值)
2014/05/09 Javascript
JS实现完全语义化的网页选项卡效果代码
2015/09/15 Javascript
基于jQuery实现仿51job城市选择功能实例代码
2016/03/02 Javascript
jQuery文件上传控件 Uploadify 详解
2016/06/20 Javascript
JS for循环中i++ 和 ++i的区别介绍
2016/07/20 Javascript
Vue方法与事件处理器详解
2016/12/01 Javascript
利用js来实现缩略语列表、文献来源链接和快捷键列表
2016/12/16 Javascript
JSON中key动态设置及JSON.parse和JSON.stringify()的区别
2016/12/29 Javascript
JS简单获取当前日期和农历日期的方法
2017/04/17 Javascript
js动态添加表格逐行添加、删除、遍历取值的实例代码
2018/01/25 Javascript
基于Vue中点击组件外关闭组件的实现方法
2018/03/06 Javascript
如何封装了一个vue移动端下拉加载下一页数据的组件
2019/01/06 Javascript
解决ant Design Search无法输入内容的问题
2020/10/29 Javascript
[06:07]刀塔密之二:攻之吾命受之吾幸
2014/07/03 DOTA
[01:02:06]LGD vs Mineski Supermajor 胜者组 BO3 第二场 6.5
2018/06/06 DOTA
Python中实现两个字典(dict)合并的方法
2014/09/23 Python
python判断一个集合是否包含了另外一个集合中所有项的方法
2015/06/30 Python
Python的SimpleHTTPServer模块用处及使用方法简介
2018/01/22 Python
PyQt5每天必学之布局管理
2018/04/19 Python
使用 tf.nn.dynamic_rnn 展开时间维度方式
2020/01/21 Python
QT5 Designer 打不开的问题及解决方法
2020/08/20 Python
python中HTMLParser模块知识点总结
2021/01/25 Python
英国第一豪华护肤品牌:Elemis
2017/10/12 全球购物
美国奢侈品在线团购网站:Gilt City
2017/11/16 全球购物
东方通信股份有限公司VC面试题
2014/08/27 面试题
编写类String 的构造函数、析构函数和赋值函数
2012/09/09 面试题
高中毕业自我鉴定
2013/12/16 职场文书
机关党员2014全国两会学习心得体会
2014/03/10 职场文书
医院合作协议书
2014/08/19 职场文书
2015年基层党支部工作总结
2015/05/21 职场文书
golang协程池模拟实现群发邮件功能
2021/05/02 Golang
Python的这些库,你知道多少?
2021/06/09 Python