Python学习第四天学习写的小案例(主要是针对 分支/循环的学习)

Python学习第四天学习写的小案例 (2019/07/17)

  • 第一题:使用while循环输出1 2 3 4 5 6 8 9 10

    程序代码:
    s = 0
    while s<10:
        if s==6:
            s += 1
            # 当数字为7的时候输出一个空格出来
            print(end=' ')
            continue
        s += 1
        print(s,end=' ')
    运行结果:

    1 2 3 4 5 6 8 9 10

  • 第二题: 求1-100的所有数的和

    程序代码:
    count = 0
    for i in range(101):
        count += i
    print("1-100的所有数的和为:",count)
    运行结果:

    1-100的所有数的和为: 5050

  • 第三题:输出1-100内所有奇数

    程序代码:
    for i in range(1,100,2):
        print(i,end=' ')
    运行结果:

    1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 41 43 45 47 49 51 53 55 57 59 61 63 65 67 69 71 73 75 77 79 81 83 85 87 89 91 93 95 97 99

  • 第四题:输出1-100内所有偶数

    程序代码:
    for i in range(2,101,2):
        print(i,end=' ')
    运行结果:

    2 4 6 8 10 12 14 16 18 20 22 24 26 28 30 32 34 36 38 40 42 44 46 48 50 52 54 56 58 60 62 64 66 68 70 72 74 76 78 80 82 84 86 88 90 92 94 96 98 100

  • 第五题:求1-2+3-4+5...99的所有数的和

    程序代码:
    count = 0
    for i in range(100):
        if i%2==0:
            count -= i
        else:
            count += i
    print(count)
    运行结果:

    50

  • 第六题:用户登录(三次机会重试)

    程序代码:
    num = 0
    while num < 3:
        account = input('请输入账号:')
        if account == 'admin':
            print("登陆成功!")
            break
        else:
            print('账号输入错误,请重新输入!')
            num +=1
    if num==3:
        print("三次机会已用完!")
    运行结果:

    请输入账号:abc
    账号输入错误,请重新输入!
    请输入账号:admi
    账号输入错误,请重新输入!
    请输入账号:admin
    登陆成功!

  • 第七题:猜年龄游戏

    要求如下:

    ? 允许用户最多尝试3次,3次都没猜对的话,就直接退出,如果猜对了,打印恭喜信息并退出

    程序代码:
    import random
    # 随机生成一个年龄age
    age = random.randint(0,100)
    num = 0
    while num<3:
        age_guess = int(input("请输入你猜测的年龄:"))
        if age_guess>age:
            print("猜大了,请重新猜一个比这个小的数!")
            num +=1
        elif age_guess<age:
            print("猜小了,请重新猜一个比这个大的数!")
            num += 1
        else:
            print("恭喜你猜对啦!")
            num=0
            break
    if num==3:
        print("三次机会已用完,游戏结束!")
    运行结果:

    三次全错:

    请输入你猜测的年龄:36
    猜小了,请重新猜一个比这个大的数!
    请输入你猜测的年龄:6
    猜小了,请重新猜一个比这个大的数!
    请输入你猜测的年龄:5
    猜小了,请重新猜一个比这个大的数!
    三次机会已用完,游戏结束!

    猜对情况:

    请输入你猜测的年龄:85
    恭喜你猜对啦!

  • 第八题:猜年龄游戏 (升级版)

    要求如下:

    允许用户最多尝试3次
    每尝试3次后,如果还没猜对,就问用户是否还想继续玩,如果回答Y或y, 就继续让其猜3次,以此 往复,如果回答N或n,就退出程序

    如果猜对了,就直接退出

    程序代码:
    import random as r
    num = 0
    age = r.randint(0,100)
    while num<3:
        guess_age = int(input("请输入你猜测的年龄:"))
        if guess_age>age:
            print("猜错啦,你猜大了!")
        elif guess_age<age:
            print("猜错啦,你猜小了!")
        else:
            print("恭喜您,猜对啦!游戏结束")
            break
        num +=1
        if num==3:
            choose = input("您已猜错超过三次,请问是否再次猜!继续请输入(Y/y),退出请输入(N/n):")
            if choose=='Y' or choose == 'y':
                num = 0
            elif choose == 'N' or choose == 'n':
                print("您已选择退出游戏")
                break
            else:
                print("您的选择有误,已强制退出游戏")
                break
    运行结果:

    请输入你猜测的年龄:50
    猜错啦,你猜大了!
    请输入你猜测的年龄:25
    猜错啦,你猜大了!
    请输入你猜测的年龄:12
    猜错啦,你猜小了!
    您已猜错超过三次,请问是否再次猜!继续请输入(Y/y),退出请输入(N/n):y
    请输入你猜测的年龄:18
    猜错啦,你猜小了!
    请输入你猜测的年龄:21
    恭喜您,猜对啦!游戏结束

  • 第九题:for 循环打印99乘法表

    程序代码:
    for i in range(1,10):
        for j in range(1,i+1):
            print(f'{j}*{i}={i*j}',end=' ')
        print()
    
    运行结果:
    1*1=1
    1*2=2 2*2=4
    1*3=3 2*3=6 3*3=9
    1*4=4 2*4=8 3*4=12 4*4=16
    1*5=5 2*5=10 3*5=15 4*5=20 5*5=25
    1*6=6 2*6=12 3*6=18 4*6=24 5*6=30 6*6=36
    1*7=7 2*7=14 3*7=21 4*7=28 5*7=35 6*7=42 7*7=49
    1*8=8 2*8=16 3*8=24 4*8=32 5*8=40 6*8=48 7*8=56 8*8=64
    1*9=9 2*9=18 3*9=27 4*9=36 5*9=45 6*9=54 7*9=63 8*9=72 9*9=81 
  • 第十题:for 循环打印金字塔:效果如下
        *
       ***
      *****
     *******
    *********
    程序代码:
    for i in range(1,10,2):
        print(f'{"*"*i:^9}')
    运行结果:
        *
       ***
      *****
     *******
    *********

    进阶版金字塔(可自由输入层数):

    程序代码:
    layer = int(input("请输入你要打印的金字塔的层数:"))
    num = 1
    for i in range(layer):
        floor = "*"*(i+num)
        print(floor.center(layer*2-1,' '))
        num+=1
    运行结果:
    请输入你要打印的金字塔的层数:7
          *
         ***
        *****
       *******
      *********
     ***********
    *************

原文地址:https://www.cnblogs.com/foreversun92/p/11202633.html

时间: 2024-08-06 23:10:09

Python学习第四天学习写的小案例(主要是针对 分支/循环的学习)的相关文章

python基础学习(四)没有写完明天。。。。。

python3.5使用 第四天: 上次学了比较深入的输入输出写法,这次我们学习的是流程判断if else我们用上次的练习交互程序来学习它们(顺便再练习一遍) 1 username=input("username:") 2 password=input("password:") 3 print(username,password) 我们登录的时候,需要用户名和密码,那么我们的程序是不是就要判断输入的用户名和密码正不正确. 这个时候就用到了if(如果) 我们要知道用户名

extJs学习基础5 理解mvvm的一个小案例

今天很是幸运,看到了一位大神的博客,学习了不少的东西.太感谢了.(满满的都是爱啊) 建议去学习这个大神的博客,真心不错. 博客地址:http://blog.csdn.net/column/details/extjs5.html?&page=1 首先要建立一个简单的项目,我是使用的 Sencha Architect 3自动生成的 app下面的文件 在视图文件中建立 MyViwepost.js (view文件中) 1 Ext.define('MyApp.view.MyViewport', { 2 e

用vue写购物车小案例使用到的知识点总结

一 获取后台数据用到的方式(在引入vue.js后引入vue-resource.js) 1.1使用get请求 (this.$http.get('请求的url', [可选参数对象,使用{}传参]).then(成功回调函数, 失败回调函数)) 1.2使用post请求 (this.$http.post('请求的url',[可选参数请求报文体对象body,使用{}传参], [可选参数对象,使用{}传参]).then(成功回调函数, 失败回调函数)) 注意点:$http.post()方法中的第二个参数固定写

python基础学习第四天

4.1 编码解码 4.2 文件操作 自学第8天.标题排列学习第四天 encode 编码 docode 解码 python2 默认 ASCII格式 # -*- coding:utf-8 -*-    # 声明程序是啥编码格式 # 将文本解码unicode格式 sname = name.decode("utf-8") # 必须先声明解码的格式是啥,比如utf-8 print(sname) ssname = sname.encode("gbk") # 将文本编码成gbk格

Python爬虫学习:四、headers和data的获取

之前在学习爬虫时,偶尔会遇到一些问题是有些网站需要登录后才能爬取内容,有的网站会识别是否是由浏览器发出的请求. 一.headers的获取 就以博客园的首页为例:http://www.cnblogs.com/ 打开网页,按下F12键,如下图所示: 点击下方标签中的Network,如下: 之后再点击下图所示位置: 找到红色下划线位置所示的标签并点击,在右边的显示内容中可以查看到所需要的headers信息. 一般只需要添加User-Agent这一信息就足够了,headers同样也是字典类型: user

python学习第四十八天json模块与pickle模块差异

在开发过程中,字符串和python数据类型进行转换,下面比较python学习第四十八天json模块与pickle模块差异. json 的优点和缺点 优点  跨语言,体积小 缺点 只能支持 int str list tuple dict pickle 的优点和缺点 优点 专门为python设计,支持python所有的数据类型 缺点 只能python使用,存储数据占空间大 文章来自 www.96net.com.cn 原文地址:https://www.cnblogs.com/96net/p/97806

python学习-第四天补充-面向对象

python学习-第四天补充-面向对象 python 私有 --name mangling(名字修改.名字) 在命名时,通过使用两个下划线作为开头,可以使得这个变量或者函数编程私有的,但是这个其实的python的伪私有,实际是python通过名字修改来进行的,python会把这样命名的变量或者函数名改为_类名__变量名 class A: __name="hello" t = A(); #print(t.__name) #这样会出现错误,错误提示说这个变量没有__name类型 print

Python入门学习(四)——迭代

1.迭代 在Python中,如果给定一个list或tuple,我们可以通过for循环来遍历这个list或tuple,这种遍历我们成为迭代(Iteration). 在Python中,迭代是通过 for ... in 来完成的. Python 的 for循环不仅可以用在list或tuple上,还可以作用在其他任何可迭代对象上. 因此,迭代操作就是对于一个集合,无论该集合是有序还是无序,我们用 for 循环总是可以依次取出集合的每一个元素. 注意: 集合是指包含一组元素的数据结构,之前学习的包括: 有

如何输出格式化的字符串(学习笔记四)

如何输出格式化的字符串(学习笔记四) 我们经常会输出类似 '亲爱的xxx你好!你xx月的话费是xx,余额是xx' 之类的字符串,而xxx的内容都是根据变量变化的,所以,需要一种简便的格式化字符串的方式. 在Python中,采用的格式化方式和C语言是一致的,用 % 实现,举例如下: >>> 'Hello, %s' % ('world') 'Hello, world' 截图如下: 注: (1)红线上的百分号,两边可有空格也可无: (2)对于只有一个变量的情况,我们可以将'world'外的括号