个人学习(7)

  1. 如何为函数定义keyword-only参数(写出个例子即可)?
keyword-only参数在定义时,必须出现在参数列表中的*args之后**args之前
def kw_only(a,*b,c,**d):
    print(a,b,c,d)

>>> kw_only(1,2,c=3,d=4)
1 (2,) 3 {'d': 4}
  1. 什么是LEGB,请解释
  • L (Local) 局部作用域
  • E (Enclosing) 闭包函数外的函数中
  • G (Global) 全局作用域
  • B (Built-in) 内建作用域

变量/函数 的查找顺序:
L –> E –> G –>B

g_var = "global env"

def outer():
    g_var = "closed func"

    def inner():
        g_var = "local env"
        print(g_var)
    inner()

outer()
  1. 实现一个计算机程序,如下效果:
    1. 运行后提示让用户输入一个数字
    2. 提示输入操作符(+ - * /)
    3. 再次提示输入一个数字
    4. 打印计算结果
    5. 在不退出程序的前提下,可以允许用户继续输入新一组数据计算
    6. 尽可能改善用户体验
def add(a, b):
    print(a + b)

def sub(a, b):
    print(a - b)

def mul(a, b):
    print(a * b)

def div(a ,b):
    print(a / b)

while True:
    num1 = input("请输入一个数字:")
    sign = input("请输入一个操作符(+,-,*,/):")
    num2 = input("请输入第二个数字:")
    try:
        if sign == "+":
            add(int(num1), int(num2))
        elif sign == "-":
            sub(int(num1), int(num2))
        elif sign == "*":
            mul(int(num1), int(num2))
        elif sign == "/":
            div(int(num1), int(num2))
        else:
            print("请选择正确的操作符")
    except:
        print("错误,请输入正确的数字")
image.png
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • https://litaotao.github.io/python-materials 1. 枚举 - enume...
    柒呇阅读 1,043评论 0 1
  • 113 Python 查找变量遵守什么顺序? LEGB 规则是啥?[#113-python-%E6%9F%A5%E...
    you的日常阅读 252评论 1 3
  • 我是黑夜里大雨纷飞的人啊 1 “又到一年六月,有人笑有人哭,有人欢乐有人忧愁,有人惊喜有人失落,有的觉得收获满满有...
    陌忘宇阅读 8,587评论 28 53
  • 人工智能是什么?什么是人工智能?人工智能是未来发展的必然趋势吗?以后人工智能技术真的能达到电影里机器人的智能水平吗...
    ZLLZ阅读 3,838评论 0 5
  • 首先介绍下自己的背景: 我11年左右入市到现在,也差不多有4年时间,看过一些关于股票投资的书籍,对于巴菲特等股神的...
    瞎投资阅读 5,761评论 3 8