Python中eval()函數(shù)的詳細(xì)使用教程
eval()函數(shù)
eval() 函數(shù)用來執(zhí)行一個字符串表達(dá)式,并返回表達(dá)式的值。
語法
eval(expression[, globals[, locals]])
expression – 表達(dá)式。
globals – 變量作用域,全局命名空間,如果被提供,則必須是一個字典對象。
locals–變量作用域,局部命名空間,如果被提供,可以是任何映射對象。返回值:返回表達(dá)式計算結(jié)果。
實例
我們在從鍵盤輸入數(shù)據(jù)時,Python接收的是字符串類型,這時我們可以使用eval()函數(shù),將輸入的數(shù)據(jù)進(jìn)行還原
實例1
n = input() m = eval(input()) # type()函數(shù)可以用來檢測數(shù)據(jù)類型 print(type(n)) print(type(m)) #利用eval()將字符串類型轉(zhuǎn)為整形 print(type(eval(n)))
輸出結(jié)果:
使用eval()函數(shù),將字符串還原為數(shù)字類型,和int()函數(shù)的作用類似
實例2
# 輸入[1,2,3,4] m = input() # 得到一個字符串 n = eval(input()) # 得到一個列表 print(type(m)) print(type(n)) print(type(n[0]))
輸出結(jié)果
將輸入的字符串轉(zhuǎn)為對應(yīng)的數(shù)據(jù)類型,列表、元組等數(shù)據(jù)類型都可以使用這種方式輸入
實例3
# 表達(dá)式 s1 = '3*7' s2 = 'pow(2,3)' n = eval(s1) m = eval(s2) print(n, m)
輸出結(jié)果:
對表達(dá)式的結(jié)果進(jìn)行計算,返回計算后的值
附:使用例子
舉一個代碼隨想錄里一個解答的例子:
second_num = 1 item = + first_num = 2 int(eval(f'{second_num} {item} {first_num}')) # 等價于本1 + 2
其中,格式化字符串常量(formatted string literals)是 Python 3.6 新引入的一種字符串格式化方法,主要目的是使格式化字符串的操作更加簡便。
f-string在形式上是以 f 或者 F 修飾符引領(lǐng)的字符串(f’xxx’ 或 F’xxx’),以大括號 {} 標(biāo)明被替代的字段。
另一個例子:
# 創(chuàng)建 my_dict = {'name':'Hider', ? ? ? ? ? ?'age':'100'} print(f"My name is {my_dict['name']}, I'm {my_dict['age']}.") # My name is Hider, I'm 100.
總結(jié)
到此這篇關(guān)于Python中eval()函數(shù)使用的文章就介紹到這了,更多相關(guān)Python eval()函數(shù)使用內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
詳解python數(shù)據(jù)結(jié)構(gòu)和算法
這篇文章主要介紹了python數(shù)據(jù)結(jié)構(gòu)和算法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-04-04Python實現(xiàn)多并發(fā)訪問網(wǎng)站功能示例
這篇文章主要介紹了Python實現(xiàn)多并發(fā)訪問網(wǎng)站功能,結(jié)合具體實例形式分析了Python線程結(jié)合URL模塊并發(fā)訪問網(wǎng)站的相關(guān)操作技巧,需要的朋友可以參考下2017-06-06pycharm恢復(fù)默認(rèn)設(shè)置或者是替換pycharm的解釋器實例
今天小編就為大家分享一篇pycharm恢復(fù)默認(rèn)設(shè)置或者是替換pycharm的解釋器實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-10-10python爬取NUS-WIDE數(shù)據(jù)庫圖片
本文給大家分享的是使用Python制作爬蟲爬取圖片的小程序,非常的簡單,但是很實用,有需要的小伙伴可以參考下2016-10-10