前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >零基础Python教程035期 exec和eval字符串转python执行妙用

零基础Python教程035期 exec和eval字符串转python执行妙用

作者头像
刘金玉编程
发布2019-11-07 13:54:45
3840
发布2019-11-07 13:54:45
举报
文章被收录于专栏:编程创造城市编程创造城市
知识要点:

1、掌握随机数猜数字小游戏

2、掌握类random使用

3、掌握多条件判断,利用关键词and 与 or

本节知识视频教程

以下开始文字讲解:

一、exec函数试用

exec执行的格式:

exec(字符串)

exec执行后的字符串转为python语句执行以后,会记忆在内存中

举例执行代码:

>>> exec("a=10")

>>> a

10

利用这个功能可以做典型案例:gui的计算器

二、Python中的对象表示方法

使用英文状态下的大括号表示{ }

对象表示方法,是一个键值对的形式。

举例表示一个对象:

Person={“name”:”刘金玉”,sex:”男”}

对象结合exec函数进行传值的形式:

>>> exec("print('姓名:'+name+'性别:'+sex)",person)

姓名:老刘性别:男

三、参数释义

1.exec函数

exec两个参数

形式一:exec(字符串,起到局部保护作用的对象)

形式二:exec(字符串,给字符串中相同名称的变量传值的对象)

当命名空间冲突的时候,采用的解决方案

1)、使用完整命名空间的方式,例如

>>> random.randint(1,20)

19

2)、使用一个对象来进行命名空间的保护

>>> exec("x=randint(1,20)",s)

exec三参数传值

exec(字符串,起到局部保护作用的对象,给字符串中相同名称的变量传值的对象)

>>> t={"a":1,"b":3}

>>> exec("print(a+b)",s,t)

4

2.eval函数

这个函数的执行效果类似于exec函数

Eval函数会返回一个执行的结果,我们可以将执行的结果保存起来

>>> x=eval("1")

>>> x

1

>>> x=eval("a+b",s,t)

>>> x

4

案例编写:

输入代码,直接转为python进行运算,直到编程完毕,返回结果

四、总结强调

1、exec函数执行字符串转python

2、eval函数执行字符串转Python

3、exec和eval函数的异同点

4、对象的定义方法

5、exec函数和eval函数多参数的使用方法

本节知识源代码:

代码语言:javascript
复制

codesAll=""
print("您可以输入python代码,如果输入ljyok,表示输入完毕,开始执行")
while True:
    x=input("")
    if x=="ljyok":
        print("---------开始执行代码,并输出结果--------")
        exec(codesAll)
        break
    else:
        codesAll+=x+"\n"
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-11-06,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 编程创造城市 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档