用户选择,调用相应函数的编写方法

用户选择,调用相应函数的编写方法:

1.先输出Menu菜单,让用户选择。

2.创建一个Menu字典k=序号,v=操作函数

3.调用用户选择的相应序号的函数:menu[option](参数)

def account_info(acc_data):
    print(user_data)
def repay(acc_data):
    pass
def withdraw(acc_data):
    pass
def transfer(acc_data):
    pass
def pay_check(acc_data):
    pass
def logout(acc_data):
    pass
def interactive(acc_data):   ###注意menu """..."""下的内容
    ‘‘‘
    interact with user
    :return:
    ‘‘‘
    menu = u‘‘‘
    ------- Oldboy Bank ---------
    \033[32;1m1.  账户信息
    2.  还款(功能已实现)
    3.  取款(功能已实现)
    4.  转账
    5.  账单
    6.  退出
    \033[0m‘‘‘
    menu_dic = {
        ‘1‘: account_info,
        ‘2‘: repay,
        ‘3‘: withdraw,
        ‘4‘: transfer,
        ‘5‘: pay_check,
        ‘6‘: logout,
    }
    exit_flag = False
    while not exit_flag:
        print(menu)
        user_option = input(">>:").strip()
        if user_option in menu_dic:             #判断用户的输入是否在字典里
            menu_dic[user_option](acc_data)     #menu_dic[user_option]相当于一个函数func,然后func(acco_data)加上括号,传入参数
        else:
            print("\033[31;1mOption does not exist!\033[0m")
def run():
    ‘‘‘
    this function will be called right a way when the program started, here handles the user interaction stuff
    :return:
    ‘‘‘
    acc_data = auth.acc_login(user_data,access_logger)
    if user_data[‘is_authenticated‘]:
        user_data[‘account_data‘] = acc_data
        interactive(user_data)

  

  

时间: 2024-10-11 06:15:50

用户选择,调用相应函数的编写方法的相关文章

多返回值函数的编写方法

方法一:利用全局变量 注意,该方法虽然可以实现有多个返回值的函数,但是由于全局变量不能保证值的正确性(因为其作用域是全局,所以程序范围内都可以修改它的值,如果出现错误将非常难以发现),并且全局变量增加了程序间模块的耦合,所以该方法要慎用. 方法二:使用数组指针 注意,该方法适用于多个返回值的数据类型一致的情况. 方法三:使用结构体指针 注意,当函数要求返回的多个值是相互关联的,或者返回的多个值数据类型不一致时可以采用该方法. 详细内容请参考:http://blog.csdn.net/suprem

JavaScript函数之实际参数对象(arguments) / callee属性 / caller属性 / 递归调用 / 获取函数名称的方法

函数的作用域:调用对象 JavaScript中函数的主体是在局部作用域中执行的,该作用域不同于全局作用域.这个新的作用域是通过将调用对象添加到作用域链的头部而创建的(没怎么理解这句话,有理解的亲可以留言告诉我, 谢谢).因为调用对象是作用域链的一部分,所以在函数体内可以把这个对象属性作为变量来访问. 调用对象的属性包括:用var声明的局部变量,函数形参,还有一种特殊的属性arguments 函数的实际参数:实际参数对象 arguments对象,用来引用实际参数对象.函数的arguments对象并

typedef函数指针使用方法

1.简单的函数指针的应用 形式1:返回类型(*函数名)(參数表) char (*pFun)(int); char glFun(int a){ return;} void main() { pFun = glFun; (*pFun)(2); } 第一行定义了一个指针变量pFun.首先我们依据前面提到的"形式1"认识到它是一个指向某种函数的指针,这样的函数參数是一个int型,返回值是char类型.仅仅有第一句我们还无法使用这个指针,由于我们还未对它进行赋值. 第二行定义了一个函数glFun

3D Slicer中文教程(六)—调用matlab函数(MatlabBridge使用方法)

1.安装MatlabBridge插件 (1)在工具栏找到Extension,点击进入Extension Manager (2)找到MatlabBridge,安装 2.配置MATLAB环境 (1)在模块处找到Developer Tools——Matlab——Matlab Modules Generator (2)在Matlab executable处配置matlab.exe的路径(请确保计算机上安装有matlab,并且可以找到matlab.exe文件的位置):Matlab script direc

前端流程实现方法(用户选择记录完成记录并支持server访问更改)

进行用户选择后记录信息并完成记录(关于写入前端信息的详细分析)  chang_jw   将每个页面的<a href->告诉后端server, 按照做server的组员的要求进行更改了网页名称,并做好href信息 后端根据此进行访问网页并更改页面上value. 后端通过console.log()进行调试,获取接口处的id值(如/film ?id, 或 /cinema?id),并通过id值访问并进行接口处的操作. 后端记录这些写入表中等待访问. 通过href = film.html进行当用户选择完

[转]vc中调用其他应用程序的方法(函数) winexec,shellexecute ,createprocess

三个SDK函数: WinExec,ShellExecute ,CreateProcess可以实现调用其他程序的要求,其中以WinExec最为简单,ShellExecute比WinExec灵活一些,CreateProcess最为复杂.    WinExec 两个参数,前一个指定路径,后一个指定显示方式.    ShellExecute 可以指定工作目录,并且还可以寻找文件的关联直接打开不用加载与文件关联的应用程序,ShellExecute还可以打开网页,启动相应的邮件关联发送邮件等等.    Cr

Effective C++ 之 Item 5:了解C++默默编写并调用哪些函数

Effective C++ chapter 2. 构造 / 析构 / 赋值运算 (Constructors, Destructors, and Assignment Operators) Item 5. 了解 C++ 默默编写并调用哪些函数 (Know what functions C++ silently writes and calls)

matlab 函数的编写与调用

matlab中写个函数,在主程序中调用该函数的方法 跟其它的编程语言都一样,但是子函数与主函数要存于不同的文件中,文件名就是函数名字.文件必须保存在current directory中,才能调用. 函数的基本结构: function [返回变量列表]=函数名(输入变量列表) %注释说明语句 输入.返回变量格式的检测 函数体 %--------简例----- 主函数 main.my=test(x)子函数 test.m (文件名字即为函数名字)function z=test(x)z=x.*x; %-

Effective C++ Item 5 了解 C++ 默默编写并调用哪些函数

本文为senlie原创,转载请保留此地址:http://blog.csdn.net/zhengsenlie 经验: 如果你自己没声明,编译器会自动声明copy constructor,copy assignment,destructor, 如果你没有声明任何构造函数,编译器会自动声明default constructor 示例: 如果你写下 class Empty{ }; 将会等价于 class Empty{ public: Empty() {...} //default构造函数 Empty(c