• day15


    作业要求:下述所有代码画图以及分析代码执行流程

    1、以定义阶段为准,先画出名称空间的嵌套关系图

    2、然后找到调用函数的位置,写出函数调用时代码的执行过程,涉及到名字的查找时,参照1中画好的嵌套图,标明查找顺序,一层一层直到找到位置

    =题目一=

    input=333
    def func():
        input=444
    func() 
    print(input) #333
    
    

    1 题目二=

    def func():
        print(x)
    x=111
    
    func() #111
    
    
    image-20200319144009553

    =题目三=

    x=1
    def func():
       print(x) #1
    
    def foo():
        x=222
        func()
    
    foo()
    
    image-20200319144700624

    =题目四=

    input=111
    def f1():
        def f2():
            # input=333
            print(input) #222
        input=222
    		f2()
    
    f1()
    
    image-20200319145229033

    =题目五=

    x=111
    def func():
        print(x) #报错
        x=222
    
    func()
    
    image-20200319145607454

    =题目六=

    x=111
    
    def foo():
        print(x,) #111
    
    def bar():
        print(x)  #111
    
    foo()
    bar()
    
    image-20200319145924922

    =题目七=

    x=1
    def func2():
        func1()
    
    x=2
    def func1():
        print(x) #3
    
    x=3
    
    func2()
    

    image-20200319151230260

    =题目八=

    1、如下全局变量记录了当前登录用户,编写登录功能,一旦用户登录成功,则将全局变量赋值为当前登录的用户名
    login_user=None

    login_user=None
    username='egon'
    password='123'
    def login():
        user_name = input('请输入用户名:').strip()
        user_pwd = input('请输入密码:').strip()
        if user_name ==username and user_pwd:
            print('登录成功')
            global login_user
            login_user = user_name
    
    login()
    print(login_user) 
    
    
    结果展示:
    请输入用户名:egon
    请输入密码:123
    登录成功
    egon
    

    2、针对之前编写的查询余额的功能,添加额外的逻辑:如果用户没有登录,则先执行登录功能

    def check_balance():
        '''查看余额功能'''
        if login_user:
            with open('user_info.txt', 'r', encoding='utf-8')as f:
                for line in f:
                    username,password , balance = line.strip().split(':')
                    if user_info['username'] == username:
                        print(f'用户{username}余额为:{balance}')
        else:
            print('请先登录!')
            login()
    
  • 相关阅读:
    1058
    light oj 1067 费马小定理求逆元
    HDU 1022
    贪心
    HDU 4994 博弈。
    HDU 5234 背包。
    CodeForces 327B 水题。
    vue的$nextTick使用总结,this.$refs为undefined的解决办法,element Ui的树形控件setCheckedKeys方法无法使用
    Object.assign的用法
    react + antd 实现打印功能(踩了不少坑)
  • 原文地址:https://www.cnblogs.com/xy-han/p/12526577.html
Copyright © 2020-2023  润新知