本篇文章給大家分享的是有關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執行妙用,小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。