Python中利用进度条求圆周率

从祖冲之到现在,圆周率的发展越来越丰富,求法也是越来越快其中:

1.求圆周率的方法:

(1)蒙特卡罗法

这是基于“随机数”的算法,通过计算落在单位圆内的点与正方形内的比值来求圆周率PI。

如果一共投入N个点,其中有M个落入圆中,则要点均匀,假定圆周率的半径为R,则:

(2)欧拉恒等式公式为:

基础的泰勒级数:

(2)求python进度表

代码:

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time : 18-5-21 下午3:44
# @Author : LK
# @File : 进度条.py
# @Software: PyCharm

import sys
import time
def process_bar(precent, width=50):
use_num = int(precent*width)
space_num = int(width-use_num)
precent = precent*100
# 第一个和最后一个一样梯形显示, 中间两个正确,但是在python2中报错
#
# print(‘[%s%s]%d%%‘%(use_num*‘#‘, space_num*‘ ‘,precent))
# print(‘[%s%s]%d%%‘%(use_num*‘#‘, space_num*‘ ‘,precent), end=‘\r‘)
print(‘[%s%s]%d%%‘%(use_num*‘#‘, space_num*‘ ‘,precent),file=sys.stdout,flush=True, end=‘\r‘)
# print(‘[%s%s]%d%%‘%(use_num*‘#‘, space_num*‘ ‘,precent),file=sys.stdout,flush=True)

if __name__ == ‘__main__‘:
for i in range(21):
precent = i/20
process_bar(precent)
time.sleep(0.2)
print(‘\n‘)

显示如下:

t

(3)利用进度条显示求圆周率

代码如下:

import math
import time
scale=10
print("执行开始")
t=time.process_time()
for i in range(scale+1):
a,b=‘**‘*i,‘..‘*(scale-i)
c=(i/scale)*100
π=4*(4*math.atan(1/5)-math.atan(1/239))
print("%{:3}[{}->{}]".format(a,b,c))
time.sleep(0.1)
print(π)
print("{:.2f}s".format(t))
print("执行结束")

运行结果如下:

现在,到此结束.................

原文地址:https://www.cnblogs.com/psl1234/p/10569095.html

时间: 2024-10-14 00:44:11

Python中利用进度条求圆周率的相关文章

python中模拟进度条

文件的write方法并不是直接将文件写入硬盘,而是先写入缓存,等缓存写满等条件满足时再写入磁盘. 有时为了保证数据安全性,需要调用flush来强制数据落盘.同理在标准输出sys.stdout中也有flsuh方法,例如使用sys.stdout来模拟进度条: import sys,time for i in range(20): sys.stdout.write("#") sys.stdout.flush() time.sleep(0.5)

Android 中带有进度条效果的按钮(Button)

安卓中带有进度条效果的按钮,如下图: 1.布局文件如下activity_main.xml 1 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 2 xmlns:tools="http://schemas.android.com/tools" 3 android:layout_width="fill_parent" 4 android:layo

Bootstrap中的进度条

进度条 在网页中,进度条的效果并不少见,比如一个评分系统,比如加载状态等.就如下图所示的一个评分系统,他就是一个简单的进度条效果: 进度条和其他独立组件一样,开发者可以根据自己的需要,选择对应的版本: ? LESS版本:源码文件progress-bars.less ? Sass版本:源码文件_progress-bars.scss ? 编译后版本:bootstrap.css文件第4500行-第4575行 而且Bootstrap框架为大家提供多种样式风格的进度条,供大家使用,这一小节只是给大家直观上

[Python]命令行进度条

关键点是输出'\r'这个字符可以使光标回到一行的开头,这时输出其它内容就会将原内容覆盖. import time import sys def progress_test(): bar_length=20 for percent in xrange(0, 100): hashes = '#' * int(percent/100.0 * bar_length) spaces = ' ' * (bar_length - len(hashes)) sys.stdout.write("\rPercent

#Python绘制 文本进度条,带刷新、时间暂缓的

#Python绘制 文本进度条,带刷新.时间暂缓的 #文本进度条 import time as T st=T.perf_counter() print('-'*6,'执行开始','-'*6) maxx=11 #要大1 for i in range(maxx): s1='*'*i s2='->' s3='.'*(maxx-i-1) T.sleep(0.5) #假装有延时 dur=T.perf_counter()-st print("\r%3d%%[%s%s%s] %.2fs"%(i

Python中利用Tesseract软件来识别图片中的英文与中文

OCR与Tesseract介绍   将图片翻译成文字一般被称为光学文字识别(Optical Character Recognition,OCR).可以实现OCR 的底层库并不多,目前很多库都是使用共同的几个底层OCR 库,或者是在上面进行定制. Tesseract 是一个OCR 库,目前由Google 赞助(Google 也是一家以OCR 和机器学习技术闻名于世的公司).Tesseract 是目前公认最优秀.最精确的开源OCR 系统. 除了极高的精确度,Tesseract 也具有很高的灵活性.它

Python 实现下载进度条(不带GUI界面)

话不多说,先上图该Python代码可以实现获取下载的文件名,下载文件的大小,下载速度等. 代码关键点: 1.关于下载文件名的获取:代码里使用两种方式获取:(1) 通过Content-Disposition属性,该属性是作为对下载文件的一个标识字段,存储着下载文件名(2) 直接通过链接获取,例如:sw.bos.baidu.com/sw-search-sp/software/8b23f8846df3d/BaiduMusicSetup.exe 文件后面直接就是文件名称了.2.关于下载文件大小的获取:直

python实例文本进度条

简单的文本进度条代码 解析 引入time库 打印一行作为开始 最后也打印一个结束的标签 定义变量等于10,文本进度条大概的宽度是10 使用for循环来模拟进度,for i in range()能够不断地产生循环 每次答应都会显示当前的休眠状态 字符串与整数的乘积表示字符串被复制的次数 变量a 表示?被复制的次数 变量b 表示点被复制的次数,与当前剩余的进度条比例之间的乘积 通过a和b就可以知道当前已知执行的和未知执行的关系 c表示输出当前输出进度条与未输出之间的关系 使用print函数增加了槽,

C#.NET中使用BackgroundWorker在模态对话框中显示进度条

这里是一个示例,其中展示了如何使用Backgroundworker对象在模态对话框中显示后台操作的实时进度条. 首先是主窗体代码: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms;