如何在Python中執行包含Python程式碼的字串?
在這篇文章中,我們將瞭解如何在Python中執行包含Python程式碼的字串。
要執行包含Python程式碼的字串,我們應該使用三引號將輸入字串作為多行輸入,然後我們將使用內建函式exec()。這將接收一個字串作為輸入,並返回字串內程式碼的輸出。
exec()函式用於動態執行Python程式。這些程式可以是字串或物件程式碼。如果是字串,則將其轉換為一系列Python語句,然後執行這些語句,除非出現語法錯誤;如果是物件程式碼,則直接執行。
我們必須小心,不要在函式宣告之外的任何地方使用return語句,即使是在傳遞給exec()方法的程式碼上下文中也不行。
示例
在下面給出的程式中,我們接收一個多行程式碼字串作為輸入,並使用exec()方法找出其輸出−
str1 = """ a = 3 b = 6 res = a + b print(res) """ print("The output of the code present in the string is ") print(exec(str1))
輸出
上面示例的輸出如下所示:
The output of the code present in the string is 9 None
使用eval()函式
要執行字串中存在的表示式,我們將使用內建函式eval()並將字串傳遞給函式,然後返回字串內程式碼的輸出。
示例
在下面給出的示例中,我們接收一個表示式作為字串輸入,並使用eval()方法對其進行求值:
str1 = "3 + 5" print("The output of the code present in the string is ") print(eval(str1))
輸出
上面示例的輸出如下所示:
The output of the code present in the string is 8
廣告