zoukankan      html  css  js  c++  java
  • Python 挑战,你通关了吗?速来看题解!

    Python 通关挑战结束了,快来看看自己获奖了吗?
    在这里插入图片描述

    没有获奖的小伙伴也不能灰心哦下一期楼赛我们也在努力“缓冲”中期待下次在排行榜中见到你,来挑战薅羊毛哦!

    这次 Python 挑战完,你还记得你做了哪些题呢?在挑战过程中又遇到什么难题了呢?如果你没有参加挑战,也可以来涨涨知识哦!

    总共有 10 个挑战题,因为内容比较多,无法一一展示,可以戳/获取全部内容:shiyanlou007

    01 圆的面积

    相信大家都学过 Python 3 的基本语法吧?这个挑战中,我们将实现一个简单的程序用来计算圆的面积并打印输出。

    挑战步骤

    在 /home/project 中创建一个 Python 脚本 CircleArea.py。

    cd /home/project
    touch CircleArea.py
    

    CircleArea.py 能够根据输入的半径计算圆的面积,并把面积打印出来,保留小数点后 10 位(四舍五入)。

    请完善下面的代码:

    import sys
    import math
    
    #请完善代码
    

    挑战要求

    • 本次挑战必须使用 Python 3 实现;
    • 文件路径为 /home/project/CircleArea.py ;
    • 本题不是使用 input 函数接收用户输入,而是使用命令行参数;
    • 圆周率可以使用 math.pi 。

    最终效果
    在这里插入图片描述

    参考代码

    这题的难度比较简单,仅用补充 4 行代码就可完成挑战。

    import sys
    import math
    a=sys.argv[1]
    r=float(a)
    s=math.pi*r**2
    print(f'{s:.10f}')
    

    02 字符串操作

    我们需要实现一个程序来提取文件中大于 5 的数字,然后依次打印输出。

    挑战步骤

    首先,在终端中下载所需的测试文件:

    cd /home/project
    wget https://labfile.oss.aliyuncs.com/courses/790/String.txt
    

    这个文件 String.txt 中存储了一个很长的字符串,需要读取并进行处理。

    在 /home/project 目录下创建 FindDigits.py Python 文件:

    cd /home/project
    touch FindDigits.py
    

    FindDigits.py 中,我们需要完成以下任务:

    使用 open 函数打开同级目录下的 String.txt 文件并读取其中的字符串。

    依次提取字符串中符合要求的数字,并组合成一个新的字符串,然后打印输出。

    挑战要求

    • 本次挑战必须使用 Python 3 实现;
    • 请在 Open 函数中使用相对路径,避免影响检测结果。
    • Python 文件路径为 /home/project/FindDigits.py 。

    最终效果

    在这里插入图片描述

    参考代码

    这题的难度也比较简单,共有 2 个方法。

    方法一:

    with open('String.txt') as f:
        s = f.read()
        res = ""
        for char in s:       
            if char.isdigit() and int(char)>5:
                res += char     
    
        print(res)
    

    方法二:

    with open('String.txt') as g:
         print(''.join([i for i in g.read() if i.isdigit() and int(i)>5]))
    

    03 逢 X 就跳过

    不知道大家有没有玩过“逢 7 跳过”的游戏,游戏规则很简单:

    几个人轮流报数,凡遇到 7 的倍数,或者尾数为 7 的数字就要跳过,否则为失败。

    比如下图中,绿色部分的数字就属于安全区域,而报出红色部分的数字就失败了。
    在这里插入图片描述

    挑战步骤

    首先在 /home/project 目录下创建 /home/project 文件。然后写入代码并完善,使之能够返回安全区域全部数字的列表。

    挑战要求

    • 本次挑战必须使用 Python 3 实现;
    • 文件路径为 /home/project/jumpx.py ;
    • 在文件中写入代码,返回 1 到 100 之间(包含 1 和 100 )不是 x 的倍数且不含 x 的数字组成的列表;
    • 请不要修改现有的代码。

    最终效果
    在这里插入图片描述

    参考代码
    在这里插入图片描述

    如果你有任何编程问题,欢迎戳/:shiyanlou007

  • 相关阅读:
    React 获取服务器API接口数据:axios、fetchJsonp
    nvm管理node版本
    windows自定义命令的创建
    目标平台、活动平台 配置,出现未能加载文件或程序集“xxx”或它的某一个依赖项报错
    Quartz.net使用总结
    vs 2010 中类文文件模板的修改
    js获取url参数的两种方法
    遍历文件夹
    简单多条件动态查询的实现
    ajax请求跨域问题
  • 原文地址:https://www.cnblogs.com/shiyanlou/p/15625415.html
Copyright © 2011-2022 走看看