python 字典可以储存函数吗Python中是没有switch的, 所以有时我们需要用switch的用法, 就只能通过if else来实现了. 但if else写起来比较冗长,
这时就可以使用Python中的dict来实现, 比switch还要简洁. 用法如下:
如果是key1的情况就执行func1, 如果是key2的情况就执行func2...(func1, func2...所有的函数的参数形式需要相同),
假设各个函数参数均为(arg1, arg2):
dictName = {"key1":func1, "key2":func2, "key3":func3"...}#字典的值直接是函数的名字,不能加引号dictName[key](arg1, arg2)
示例代码如下:
【python保存函数 python中如何保存数据】#!/usr/bin/python#File: switchDict.py#Author: lxw#Time: 2014/10/05import redef add(x, y):return x + ydef sub(x, y):return x - ydef mul(x, y):return x * ydef div(x, y):return x / ydef main():
inStr = raw_input("Please input the easy expression:(e.g. 1 + 2.But 1 + 2 + 3 are not accepted.\n")
inList = re.split("(\W+)", inStr)
inList[1] = inList[1].strip()print("-------------------------")print(inList)print("-------------------------")#Method 1:
if inList[1] == "+":print(add(int(inList[0]), int(inList[2])))elif inList[1] == "-":print(sub(int(inList[0]), int(inList[2])))elif inList[1] == "*":print(mul(int(inList[0]), int(inList[2])))elif inList[1] == "/":print(div(int(inList[0]), int(inList[2])))else:pass
#Method 2:
try:
operator = {"+":add, "-":sub, "*":mul, "/":div}print(operator[inList[1]](int(inList[0]), int(inList[2])))except KeyError:passif __name__ == '__main__':
main()
Output:
PS J:\ python .\switchDict.py
Please input the easy expression:(e.g. 1 + 2.But 1 + 2 + 3 are not accepted.1 + 2
-------------------------['1', '+', '2']-------------------------
3
3PS J:\ python .\switchDict.py
Please input the easy expression:(e.g. 1 + 2.But 1 + 2 + 3 are not accepted.4 - 9
-------------------------['4', '-', '9']-------------------------
-5
-5PS J:\ python .\switchDict.py
Please input the easy expression:(e.g. 1 + 2.But 1 + 2 + 3 are not accepted.6 / 5
-------------------------['6', '/', '5']-------------------------
1
1PS J:\ python .\switchDict.py
Please input the easy expression:(e.g. 1 + 2.But 1 + 2 + 3 are not accepted.1 9 9
-------------------------['1', '', '9', ' ', '9']-------------------------PS J:\ python .\switchDict.py
Please input the easy expression:(e.g. 1 + 2.But 1 + 2 + 3 are not accepted.1 ( 9
-------------------------['1', '(', '9']-------------------------PS J:\
个人感觉, 如果想用switch来解决某个问题, 并且每种情况下的操作在形式上是相同的(如都执行某个函数并且这些函数有
相同的参数), 就可以用这种方法来实现.
Python如何将生成的代码/函数保存进文件并导入Python具备动态导入module并且执行其中代码python保存函数的能力,所以python保存函数你只要importpython保存函数你保存的东西就可以 , 无需中断你当前的代码执行流 。
python如何保存img文件python保存img文件有两种方法:
1、使用matplotlib模块的“matplotlib.image.imsave()”函数可以保存图片
示例代码如下:
2、使用opencv模块“opencv.imwrite()”函数可以保存图片
、
更多Python知识,请关注:Python自学网?。?
python怎么保存生成的图像?要使用python , 必须先安装python , 一般是2.7版本以上,不管是在windows系统,还是linux系统,安装都是非常简单的 。
要使用python进行各种开发,就必须安装对应的库 。(推荐学习:Python视频教程)
这和matlab非常相似,只是matlab里面叫工具箱(toolbox),而python里面叫库或包 。安装这些库,一般都是使用pip来安装 。
使用python进行数字图片处理,还得安装Pillow包 。虽然python里面自带一个PIL(python images library), 但这个库现在已经停止更新了,所以使用Pillow, 它是由PIL发展而来的 。
推荐阅读
- 包含postgresqlgitlab的词条
- 生产版 智邦国际erp系统操作流程,智邦国际生产版软件好用吗
- 直播放什么音乐不尴尬女生,直播时放什么音乐最好
- mysql指定服务器,mysql服务器在哪里开启
- mysql怎么锁住表 mysql锁表语句
- 如何利用email营销,如何开展email营销
- 华为畅享7能装鸿蒙,畅享7能用鸿蒙吗
- 如何营销推广产品方案,产品营销推广的方案
- 怎么访问网络mysql 怎么访问网络里面的计算机