第四周 程序的控制结构

单分支结构:根据判断条件结果而选择不同向前路径的运行方式
if <条件>:
<语句块>

二分支结构:根据判断条件结果而选择不同向前路径的运行方式
if <条件>:
<语句块1>
else:
<语句块2>
紧凑形式:适用于简单表达式的二分支结构
<表达式1>if<条件>else<表达式2>

guess=eval(input())
print("猜{}了“.format("" if guess==99 else "错"))

多分支结构:根据多个条件来选择不同语句块运行的一种分支结构
if <条件>:
<语句块1>
elif:
<语句块2>
……
else:
<语句块2>

用于条件组合的三个保留字:
and 与,or 或,not 非

异常处理
try:
<语句块1>
except<异常类型>:
<语句块2>
高级使用:finally对应语句块4一定执行,else对应语句块3在不发生异常时执行。
try:
<语句块1>
except<异常类型>:
<语句块2>
else:
<语句块3>
finally:
<语句块4>

遍历循环:遍历某个结构形成的循环运行方式,从遍历结构中逐一提取元素,放在循环变量中,执行下面的语句块。
for <循环变量>in<遍历结构>:
<语句块>

计数循环(N次):
for i in range(N):
<语句块>
0,1,……N-1

计数循环(特定次):
for i in range(M,N,K):
<语句块>
从M不到N,以K为步长

字符串遍历循环:
for c in s:
<语句块>
s是字符串,遍历字符串每个字符,产生循环

for c in "python123":
  print(c,end=",")

p,y,t,h,o,n,1,2,3,

列表遍历循环:
for item in ls:
<语句块>
ls是一个列表,遍历其每个元素,产生循环

文件遍历循环:
for line in fi:
<语句块>
fi是一个文件标识符,遍历其每行,产生循环

无限循环:由条件控制的循环运行方式,反复执行语句块,直到条件不满足时结束。
while <条件>:
<语句块>
ctrl+c退出当前程序执行

循环控制保留字:break,continue
break跳出并结束当前整个循环,执行循环后的语句(仅跳出当前最内层循环
continue结束当次循环,继续执行后续次数循环
break和continue可以与for和while循环搭配使用

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

pyhon
for c in "python":
  if c=="t":
  break
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]

pypypypypyp

循环与else:当循环没有被break语句退出时,执行else语句块;else语句块作为”正常“完成循环的奖励,这里的else的用法与异常处理中的用法相似。
for <循环变量>in<遍历结构>:
<语句块1>
else:
<语句块2>
while<条件>:
<语句块1>
else:
<语句块2>

for c in "python":
  if c =="t":
    continue
  print(c,end="")
else:
  print("正常退出")

python正常退出
for c in "python":
  if c =="t":
    break
  print(c,end="")
else:
  print("正常退出")

py

radom库:使用随机数的python标准库
基本随机数函数:seed(a=None)(初始化给定的随机数种子,默认为当前系统时间)python random.seed(10)#产生种子10对应的序列
random()(生成一个[0.0,1.0)之间的随机小数)random.random()
扩展随机数函数:randint(a,b)(生成一个[a,b]之间的整数),

random.randint(10,100)

64

getrandbits(k)(生成一个k比特长的随机整数),

random.getrandbits(16)

37885

uniform(a,b)(生成一个[a,b]之间的随机小数),

random.uniform(10,100)

13.096321648808136

randrange(m,n[,k])(生成一个[m,n)之间以k为步长的随机整数),

random.randrange(10,100,10)

80

choice(seq)(从序列seq中随机选择一个元素),

random.choice([1,2,3,4])

2

shuffle(seq)(将序列seq中元素随机排列,返回打乱后的序列)

s=[1,2,3,4];random.shuffle(s);print(s)

[3,2,1,4]

当一段代码太长时可以用”\“换行

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值