美文网首页PythonPython
Python高阶函数和eval()函数

Python高阶函数和eval()函数

作者: 我爱学python | 来源:发表于2019-08-10 16:22 被阅读59次

一、介绍

高阶函数:变量可以指向函数,函数的参数能接收变量,那么一个函数就可以接收另一个函数作为参数。

二、具体实用

其实说白了,高阶函数功能就是:把函数本身当做一个参数,传到另一个函数中,然后在这个函数中做处理。代码如下:

'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:857662006 
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
#普通函数
def test_1(a,b):
    return a+b
 
#高阶函数
def test_2(a,b,f):
    return f(a)+f(b)
 
print("------test_1-----")
res = test_1(1,-3)
print(res)
print("------test_2-----")
res = test_2(1,-3,abs)  #把abs这个内置函数当做参数传进去
print(res)
 
#输出
------test_1-----
-2
------test_2-----
4

那这个高阶函数具体在什么地方用呐?这个我们以后用到再说,这边先暂时做了解。

三、eval()函数

在我们使用一些类似于字典的字符串时,虽然它看起来很像字典,但是在它的最外层多了引号,说明它是字符串,但是我们如何把它转换成字典呐,这就用到了eval()函数,看看eval()函数是如何把字符串转换成字典的,下面就来看看见证奇迹的时刻:

'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:857662006 
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
#定义一个类似于字典的字符串,把值赋给arg
>>> arg = '''{
            'backend': 'www.oldboy.org',
            'record':{
                'server': '100.1.7.9',
                'weight': 20,
                'maxconn': 30
            }
        }'''
#这边根据键取值报错,说明它是一个字符串,不是字典
>>> arg["backend"]
Traceback (most recent call last):
  File "<input>", line 1, in <module>
TypeError: string indices must be integers
#通过eval()函数把字符串转成字典
>>> arg = eval(arg)
#显示的类型是字典
>>> type(arg)
<class 'dict'>
>>> arg
{'record': {'server': '100.1.7.9', 'weight': 20, 'maxconn': 30}, 'backend': 'www.oldboy.org'}
#通过键能获取对应的值,说明字符串成功转成字典
>>> arg["backend"]
'www.oldboy.org'

相关文章

  • Python高阶函数和eval()函数

    一、介绍 高阶函数:变量可以指向函数,函数的参数能接收变量,那么一个函数就可以接收另一个函数作为参数。 二、具体实...

  • 08.eval、exec和其他函数

    eval、exec和其他函数 一、eval函数 1). eval函数的功能 将字符串形式的变量转换成Python的...

  • python装饰器

    装饰器简述 要理解装饰器需要知道Python高阶函数和python闭包,Python高阶函数可以接受函数作为参数,...

  • Python语法之eval()函数

    eval()函数 python中的eval()函数就是实现list、dict、tuple与str之间的转化;str...

  • Python高阶函数

    本文要点 1.什么是高阶函数 2.python中有哪些常用的高阶函数 什么是高阶函数? 在了解什么是高阶函数之前,...

  • python——list(map())函数的用法

    版本:python3.7 map()函数## map()是 Python 内置的高阶函数,它接收一个函数 f 和一...

  • Python 高阶函数与匿名函数

    高阶函数 1.map函数 map()是 Python 内置的高阶函数,它接收一个函数 f和一个list,并通过把函...

  • wangyanhua--python2

    基本函数的使用 匿名函数 常用系统高阶函数 高阶函数 常用系统高阶函数 Python递归 安装第三方库 三国小说人...

  • Python函数式介绍一 - 高阶函数

    Python函数式介绍一 - 高阶函数Python函数式介绍二 - 链式调用 最近为了给朋友推广Python函数式...

  • Python高阶函数学习笔记

    python中的高阶函数是指能够接收函数作为参数的函数 python中map()函数map()是 Python 内...

网友评论

    本文标题:Python高阶函数和eval()函数

    本文链接:https://www.haomeiwen.com/subject/gbmrjctx.html