Python学记(七)程序控制结构(下)
2019-05-20 02:29
393 查看
程序结构控制
程序的循环结构
遍历循环
遍历某个结构形成的循环运行方式
for <循环变量> in <遍历结构> : <语句块>
- 计数循环(遍历的一种)
遍历由range()函数产生的数字序列,产生循环
for i in range(N) : <语句块> for i in range(M,N,K) : #(M到N(不包括),步长为K) <语句块> ## 遍历由range()函数产生的数字序列,产生循环
- 字符串遍历循环
for c in s : <语句块> ## s是字符串,遍历字符串每个字符,产生循环 for c in "python123" : print(c,end=",") >>> p,y,t,h,o,n,1,2,3,
- 列表遍历
for item in [123, "PY", 456] : print(item, end=",") >>> 123,PY,456,
- 文件遍历
for line in fi : <...> ## fi是一个文件标识符,遍历其每一行,产生循环
无限循环
由条件控制的循环运行方式
while <conditon> : <...> ## 反复执行语句,直到条件不再满足时结束 >>> a = 3 >>> while a > 0 a = a - 1 print(a) 2 1 0 ## (ctrl + C 退出循环)
循环控制保留字
- break和continue
break跳出并结束当前整个循环,执行循环后的语句
continue结束当次循环,继续执行后续次数循环
for c in "PYTHON" if c == "T": continue print(c, end="") >>> PYHON ## c遇到T字符的时候被结束,print不再执行 for c in "PYTHON" if c == "T" : print(c, end="") >>> PY
s = "PYTHON" while s != "": for c in s : print(c, end="") s = s[:-1] >>> PYTHONPYTHOPYTHPYTPYP s = "PYTHON" while s != "": for c in s : if c == "T" : break print(c, end="") s = s[:-1] >>> PYPYPYPYP ## break只能跳出一层循环
- 循环的扩展
当循环没有被break语句退出时,执行else语句块。else语句块作为正常完成循环的奖励
for c in "PYTHON" if c == "T" : contiune print(c, end="") else: print("正常退出") >>> PYTHON正常退出 for c in "PYTHON" if c == "T" : break print(c, end="") else: print("正常退出") >>> PY
random库
random库是使用随机数的Python标准库
伪随机数:采用梅森旋转算法生产的(伪)随机序列中的元素
import random
random库包括两类函数,常用共8个
基本:seed(),random()
扩展:randint(), getrandbits(), uniform(), randrange(), choice(), shuffle()
基本随机数函数
- 随机数种子
import random random.seed(10) random.random() >>> 0.5714025946899135
扩展随机数函数
圆周率的计算问题
蒙特卡洛法
## 公式法 pi = 0 N = 100 for k in range(N): pi += 1/(pow(16, k)) * (4/(8 * k+1) - 2/(8 * k+4) - 1/(8*k+5) - 1/(8 * k+6)) print('圆周率为{}'.format(pi))
## 蒙特卡洛模拟法 from random import random from time import perf_counter DARTS = 1000*1000 hits = 0.0 start = perf_counter() #开始计时 for i in range(1, DARTS + 1): x, y = random(), random() ##返回(0,1)的小数 dist = pow(x ** 2 + y ** 2, 0.5) ##计算x,y到圆心的距离从而判断是否落入圆内 if dist <= 1.0: hits = hits + 1 pi = 4 * (hits/DARTS) print("圆周率是:{}".format(pi)) print("运行时间是:{}".format(perf_counter() - start)) >>> 圆周率是:3.142968 >>> 运行时间是:0.5618330459983554
相关文章推荐
- Python个人快速入门学习(五)程序的控制结构
- Python123测验4: 程序的控制结构 (第4周)
- Python学习 程序的控制结构
- Python练习题:程序控制结构 20141219
- python学习-第四课时-程序的控制结构
- 【Python2】04、Python程序控制结构
- **PYTHON** 程序的控制结构
- 实验与作业(Python)-05 程序的控制结构
- Life is short,Use Python!-----Python四杀!-----Python程序控制结构
- Python学习之五【程序控制结构-选择结构&&循环结构】
- Python_note4 程序控制结构+random库的使用
- python学习:程序控制结构·作业20141219
- 嵩天老师python123测验4: 程序的控制结构 (第4周)
- 【Python】05、python程序结构控制语句
- 3 Python - 程序结构与控制流
- python-程序的控制结构
- Python基础:程序的控制结构
- python123(Python程序语言设计)--------练习4:程序的控制结构
- python基础系列(二)程序控制结构
- 三儿的Python菜鸟历程--04--Python程序的控制结构(理论笔记)