Python基础学习----黑马程序员

第四章

1.while基础

要点:条件和操作,只要条件满足,无限循环,需要设置循环终止条件

课后作业代码:

1-100求和

num = 1
sum = 0
while num <= 100:
    sum += num
    num = num + 1
print(sum)

猜数字

import random
num = random.randint(1,100)

guess_num = int(input("请输入猜想的数字:"))
i = 1
while guess_num != num:
    i = i + 1
    if guess_num > num:
        print("猜大了")
    else:
        print("猜小了")
    guess_num = int(input("请输入猜想的数字:"))
print(f"一共猜了{i}次")

嵌套应用:

九九乘法口诀表:

i = 1
j = 1
while i <= 9:
    j=1
    while j <= i:
        print(f"{j}*{i}={i*j}\t",end="")
        j = j + 1
    print() //换行
    i = i + 1
    

2.for循环-----无法构建无限循环

2.1轮巡机制

实例:

name = "itheima"
for x in name:
    print(x)
//将name里面的每个单独取出来,并进行输出

课后作业:

name = "itheima is a brand of itcast"
i = 0
for x in name:
    if x == 'a':
        i = i + 1
print(f"itheima is a brand of itcast中共含有:{i}个字母a")


 2.2 range 

语法:

range(num):从0开始不包含num的数字序列

range(num1,num2):从num1开始不包含num2的数字序列,步长为1

range(num1,num2,step):从num1开始不包含num2的数字序列,步长为step

实例理解:

for x in range(10):
    print(x)
for x in range(5, 10):
    print(x)
for x in range(5, 10, 2):
    print(x)

课后作业:

import random
num = random.randint(1,100)
i = 0
for x in range(1, num):
    if(x % 2 == 0):
        i = i + 1
print(f"1到{num}(不包含{num}本身)范围内,有{i}个偶数。")

2.3 变量作用域

for i in range(5):
    print(i)
print(i)
#编程规范上,作用范围只限定在for循环内

可以运行,但是不建议这么做

想要在外部使用,只需要在循环前进行定义即可

2.4 for循环嵌套使用

实例理解:

#坚持表白100天
t = 0
for i in range(1,101):
    print(f"今天是表白的第{i}天,加油坚持")
    for x in range(1,11):
        print(f"给小美送的第{x}朵玫瑰花")
    print("小美我喜欢你")
    t = t + 1
print(f"第{t}天表白成功")

九九乘法口诀表:

for i in range(1,10):
    for x in range(1,i+1):
        print(f"{x}*{i}={x*i}\t",end="")
    print()

3.continue和break

continue:中断本次循环,直接进入下一次循环---临时中断

代码理解:

for i in range(1,10):
    for x in range(1,i+1):
        print(f"{x}*{i}={x*i}\t",end="")
    print()

嵌套版:

for i in range(1, 6):
    print("语句1")
    for j in range(1, 6):
        print("语句2")
        continue
        print("语句3")

break:直接结束本次循环整体-----永久中断

for i in range(1, 6):
    print("语句1")
    break
    print("语句2")
print("语句3")

4.总结--综合案例

import random
sum = 10000
for i in range(1, 21):
    j = random.randint(1, 10)
    if(j < 5):
        print(f"员工{i},绩效分{j},低于5,不发工资,下一位。")
    else:
        if sum <= 0:
            print("工资发完了,下个月领取吧。")
            break
        else:
            sum -= 1000
            print(f"向员工{i}发放工资1000元,账户余额还剩{sum}元")

包含continue版本:

import random
sum = 10000
for i in range(1, 21):
    j = random.randint(1, 10)
    if(j < 5):
        print(f"员工{i},绩效分{j},低于5,不发工资,下一位。")
        continue
    if sum <= 0:
        print("工资发完了,下个月再领取。")
        break
    else:
        sum -= 1000
        print(f"向员工{i}发放工资1000元,账户余额还剩{sum}元")

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值