美文网首页
全新Python学习day03

全新Python学习day03

作者: __method__ | 来源:发表于2021-08-15 13:11 被阅读0次

    while循环应用

    分析:1-100的累加和,即1 + 2 + 3 + 4 +….,即前两个数字的相加结果 + 下一个数字( 前一个数字 + 1)。

    # 1~100 的累加和
    i = 1
    mySum = 0
    while i <= 100:
        # mySum = mySum + i
        mySum += i
        i += 1
    print(mySum)
    # 使用if
    #  1~100 求所有能被3整除的数的和
    i = 3
    mySum = 0
    while i <= 100:
        if i%3 == 0:
            print(f'i = {i}')
            mySum += i
        i += 1
    print(mySum)
    
    # while True:
    #     pass
    
    

    注意:为了验证程序的准确性,可以先改小数值,验证结果正确后,再改成1-100做累加。

    2. 计算1~100之间偶数的累积和(包含1和100)

    分析:1-100的偶数和,即 2 + 4 + 6 + 8....,得到偶数的方法如下:

    • 偶数即是和2取余结果为0的数字,可以加入条件语句判断是否为偶数,为偶数则累加
    • 初始值为0 / 2 , 计数器每次累加2

    参考代码如下:

    方法一:条件判断和2取余数则累加

    i = 1
    sum = 0
    while i <= 100:
        if i % 2 == 0:
            sum = sum + i
        i+=1
    
    print("1~100的累积和为:%d" % sum)
    

    方法二:计数器控制

    i = 0
    result = 0
    while i <= 100:
        result += i
        i += 2
    
    # 输出2550
    print(result)
    

    终止循环的方式

    • break 终止本层循环
    • continue 结束本次循环,执行下一次循环
    # 累加和达到1000时停止并输出结果
    i = 1
    mySum = 0
    while i <= 100:
        if mySum > 1000:
            break
        mySum += i
        i += 1
    print(mySum)
    
    # 计算1~100所有奇数累加和
    i = 1
    mySum = 0
    while i <= 100:
        if i%2 == 0:
            i += 1
            continue
        mySum += i
        i += 1
    print(mySum)
    

    猜数字游戏

    # 1到100之间猜数字游戏
    from random import randint
    # randint(a, b) 生成 [a, b]区间的随机整数
    computer_num = randint(1, 100)
    # print(computer_num)
    while True:
        player_num = int(input("请输入您猜的数字"))
        if player_num > computer_num:
            print("猜大了")
        elif player_num < computer_num:
            print("猜小了")
        else:
            print("恭喜你猜对了,去领取精美的奖品吧")
            break
    

    for循环

    格式
    for 临时变量 in 迭代对象:
        循环体
    
    
    # 0~9
    for i in range(10):
        print(i)
    # range(开始, 结束, 步长)  左闭右开的区间
    # 1 ~ 10
    for i in range(1, 11):
        print(i)
    # 1~ 20之间所有奇数
    for i in range(1, 21, 2):
        print(i)
    

    for 实现 1~100 的累加和

    mySum = 0
    for i in range(1, 101):
        mySum += i
    print(mySum)
    

    小作业 :自行使用for完成改写上面所有while的示例

    循环嵌套

    格式

        while 条件1:
            
            条件1满足时,做的事情1
            条件1满足时,做的事情2
            条件1满足时,做的事情3
            ...(省略)...
    
            while 条件2:
                条件2满足时,做的事情1
                条件2满足时,做的事情2
                条件2满足时,做的事情3
                ...(省略)...
    

    嵌套应用
    要求:打印如下图形:

    * * * * * 
    * * * * * 
    * * * * * 
    * * * * * 
    * * * * * 
    
    i = 0
    while i < 5:
        j = 0
        while j < 5:
            print("* ", end='') # 不换行
            j += 1
        # 换行
        print()
        i+=1
    
    * 
    * * 
    * * * 
    * * * * 
    * * * * * 
    
    i = 0
    while i < 5:
        j = 0
        while j < i+1:
            print("* ", end='')
            j += 1
        print()
        i+=1
    
    i = 1
    while i < 10:
        j = 1
        while j < i+1:
            print(f"{j} x {i} = {i*j} ", end='\t')
            j += 1
        print()
        i+=1
    
    
    
    for i in range(1, 10):
        for j in range(1, i+1):
            print(f"{j} x {i} = {i*j} ", end='\t')
        print()
    

    列表介绍

    想一想:

    前面学习的字符串可以用来存储一串信息,那么想一想,怎样存储咱们班所有同学的名字呢?

    定义100个变量,每个变量存放一个学生的姓名可行吗?有更好的办法吗?

    答:

    列表

    列表的格式

    列表名 = [元素1,, 元素2....]
    
    heroList = ['小鲁班', '妲己', '貂蝉', 111, 99.1, [111, 222]]
    print(heroList)
    print(type(heroList))
    # 访问 索引访问
    print(heroList[0])
    # 遍历
    for i in range(6):
        print((heroList[i]))
    

    相关文章

      网友评论

          本文标题:全新Python学习day03

          本文链接:https://www.haomeiwen.com/subject/cbkubltx.html