zoukankan      html  css  js  c++  java
  • python eval与exec函数区别(36)

       

        eval 和 exec 都是python的内置函数,并且都能执行python代码,两者具体有什么区别呢?

     

        1.eval()函数只能计算单个表达式的值,而exec()函数可以动态运行代码段;

        2.exec()函数能直接执行文件中的python代码,eval()函数不能实现这个功能;

        3.eval()函数可以有返回值,而exec()函数返回值永远为None;

     

        关于eval的使用,价值10个亿的智能机器人核心代码:

    # !usr/bin/env python
    # -*- coding:utf-8 _*-
    """
    @Author:何以解忧
    @Blog(个人博客地址): shuopython.com
    @WeChat Official Account(微信公众号):猿说python
    @Github:www.github.com
     
    @File:python_eval.py
    @Time:2019/12/16 21:25
     
    @Motto:不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
    """
     
     
    while True:
        '''
        replace("?","!") 将字符串中英文状态下的问号 ?替换为 感叹号 !
        replace("?","!")将字符串中中文状态下的问号 ?替换为 感叹号 !
        replace("吗","") 将字符串中的中文 "吗" 替换为 ""
        '''
        print(input("").replace("?","!").replace("","!").replace("",""))

    测试结果:

     

        关于exec动态执行复杂的代码片段和执行txt文件中的python代码请直接参考:python execfile/exec函数

     

     

     

    猜你喜欢:

        1.python input/eval函数

        2.python字典推导式

        3.python列表推导式

        4.python线程的创建

     

     

        转载请注明:猿说Python » python eval与exec函数的区别

     

    技术交流、商务合作请直接联系博主
    扫码或搜索:猿说python
    python教程公众号
    猿说python
    微信公众号 扫一扫关注
  • 相关阅读:
    newCachedThreadPool无上限线程池使用
    newFixedThreadPool固定线程使用
    java定时器
    http文件上传/下载
    ThreadPoolExecutor线程池
    阻塞队列
    非阻塞队列
    IO文件夹拷贝(文件内含有文件和文件夹)
    MD5加密
    web.xml文件的作用
  • 原文地址:https://www.cnblogs.com/shuopython/p/12189975.html
Copyright © 2011-2022 走看看