zoukankan      html  css  js  c++  java
  • 作业0319

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

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

    2、然后找到调用函数的位置,写出函数调用时代码的执行过程,涉及到名字的查找时,参照1中画好

    的嵌套图,标明查找顺序,一层一层直到找到位置

    =题目一=

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

    图:

    =题目二=

    def func():
        print(x)
    x=111
    
    func()
    

    图:

    =题目三=

    x=1
    def func():
       print(x)
    
    
    def foo():
        x=222
        func()
    
    foo()
    

    图:

    =题目四=

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

    图:

    =题目五=

    x=111
    def func():
        print(x) ##
        x=222
    
    func()
    

    图:

    =题目六=

    x=111
    
    def foo():
        print(x,)
    
    def bar():
        print(x)
    
    foo()
    bar()
    

    图:

    =题目七=

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

    图:

    =题目八=

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

    def log_in():
        '''登录功能'''
        user_info = {}
        with open(r'C:UsersccfPycharmProjectsS14day15文件user_info.txt', mode='r', encoding='utf-8') as f:
            for line in f:
                user, pwd = line.strip().split(':')
                user_info[user] = pwd
                # print(user_info)
        for x in range(0, 3):
            inp_name = input('请输入账号:').strip()
            if inp_name in user_info:
                inp_pwd = input('账户名正确,请输入密码:').strip()
                if inp_pwd == user_info[inp_name]:
                    print("登录成功")
                    login_user = inp_name
                    break
                else:
                    print("密码错误,请重新输入:")
            else:
                print("账号错误,请重新输入:")
    
    log_in()
    

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

    def check_money(username):
        dic = {}
        with open(r'C:UsersccfPycharmProjectsS14day15文件db3.txt', 'r', encoding='utf-8') as f:
            for line in f:
                user, money = line.strip().split(':')
                dic[user] = int(money)
    
        
        if not user_info.get('user'):
            
            log_in()
    
        
        if username not in dic:
            return
    
        
        return dic.get(username)
    
    check_money()
    
  • 相关阅读:
    理解 Go interface 的 5 个关键点
    volcano networkpolicy
    通过 iptables log 日志追踪 Kubernetes 网络
    Network Policy Enforcement
    calico 容器编排之Kubernetes多租户网络隔离
    Kubernetes的原生多租户解决方案
    第四章 计算机基础知识详解
    vue兄弟组件通信
    vue父子组件通信
    Safari浏览器css兼容
  • 原文地址:https://www.cnblogs.com/zuiyouyingde/p/12527627.html
Copyright © 2011-2022 走看看