溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Python中如何讓exec和eval字符串轉python執行妙用

發布時間:2021-10-11 17:08:49 來源:億速云 閱讀:157 作者:柒染 欄目:大數據

本篇文章給大家分享的是有關Python中如何讓exec和eval字符串轉python執行妙用,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。

知識要點:

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函數多參數的使用方法

本節知識源代碼:


codesAll=""print("您可以輸入python代碼,如果輸入ljyok,表示輸入完畢,開始執行")while True:    x=input("")    if x=="ljyok":        print("---------開始執行代碼,并輸出結果--------")        exec(codesAll)        break    else:        codesAll+=x+"\n"

以上就是Python中如何讓exec和eval字符串轉python執行妙用,小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女