4.控制结构

循环结构

遍历循环

for <循环变量> in <遍历结构>:
<语句块>

-依次把每个元素迭代出来;
-每次循环,所获得的元素放入循环变量,并执行一次语句块.

计数循环(N次)

for i in range(m,n,k):
<语句块>

计数循环(特定次)

for i in range(1,6):
    print(i)
for i in range(1,6.2):
    print("hello:",i)

-步长为2

字符串遍历循环

for c in "python12345":
print(c,end=",")
p,y,t,h,o,n,1,2,3,4,5,

列表遍历循环

for item in ls :
    <语句块>

-item是一个列表,遍历其中的元素.

文件遍历循环

for line in fi :
<语句块>

-fi是一个文件标识符,遍历其每行,产生循环.

无限循环

由条件控制的循环运行方式

while <条件> :
    <语句块>

反复执行语句块,直到条件不满足时结束.

循环控制保留字break和continue.

break

在循环中,break语句可以提前退出循环.

n = 1
while n <= 100:
    if n > 10: # 当n = 11时,条件满足,执行break语句
        break # break语句会结束当前循环
    print(n)
    n = n + 1
print('END')
continue

在循环过程中,也可以通过continue语句,跳过当前的这次循环,直接开始下一次循环.

for c in "python" :
    if c == "t" :
       continue
  print(c,end =",")

运行结果为

pyhon

随机数函数

函数 功能
seed(a) 由给定种子 在梅森旋转算法下 形成随机数列(相同种子产生的随机数列相同)(如果不用seed,则默认为当前系统时间)
random() 产生[0.0,1.0)之间的随机小数
randint(a,b) 产生一个【a,b】之间的随机整数
getrandbits(s) 产生一个k比特长的随机数
uniform(a,b) 产生a,b之间的随机小数
randrange(a,b,k) 产生在[a,b)中的随机数列,k为步长
choice(seq) 从序列seq中随机选择一个数
shuffle(seq) 把序列seq随机打乱

例:利用蒙特卡洛方法计算圆周率

from random import random
from time import perf_counter   #perf_counter函数对程序运行计时
DARTS = 1000*1000  #当前区域中抛洒点的总数量
hits = 0.0      #目前圆中点的数量
start = perf_counter()  #启动计时
for i in range(1, DARTS+1): #模拟每次撒的点
    x, y = random(), random()
dist = pow(x ** 2 + y ** 2, 0.5)
if dist <= 1.0:  #判断是否在圆的内部
    hits = hits + 1
pi = 4 * (hits/DARTS)
print("圆周率值是:{}".format(pi))
print("运行时间是:{:.5f}s".format(perf_counter() - start))

你可能感兴趣的:(4.控制结构)