真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

Python函數(shù)eval python函數(shù)eval作用

python中eval()函數(shù)的作用是什么?

python中eval函數(shù)作用如下:

創(chuàng)新互聯(lián)公司-專(zhuān)業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性?xún)r(jià)比玉山網(wǎng)站開(kāi)發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫(kù),直接使用。一站式玉山網(wǎng)站制作公司更省心,省錢(qián),快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋玉山地區(qū)。費(fèi)用合理售后完善,十余年實(shí)體公司更值得信賴(lài)。

1、計(jì)算字符串中有效的表達(dá)式,并返回結(jié)果。

2、將字符串轉(zhuǎn)成相應(yīng)的對(duì)象(如list、tuple、dict和string之間的轉(zhuǎn)換)。

3、將利用反引號(hào)轉(zhuǎn)換的字符串再反轉(zhuǎn)回對(duì)象。

函數(shù)作用域:eval()函數(shù)并不會(huì)創(chuàng)建一個(gè)新的作用域,并且它的作用域就是它所在的作用域,有時(shí)候需要將eval()函數(shù)的作用域設(shè)置為全局,當(dāng)然可以將eval()在全局作用域中使用,這個(gè)時(shí)候可以用window.eval()的方式實(shí)現(xiàn)。

參數(shù)情況:

(1)如果參數(shù)是一個(gè)表達(dá)式,eval() 函數(shù)將執(zhí)行表達(dá)式。

(2)如果參數(shù)是Javascript語(yǔ)句,eval()將執(zhí)行 Javascript 語(yǔ)句。

注意:如果執(zhí)行結(jié)果是一個(gè)值就返回,不是就返回undefined,如果參數(shù)不是一個(gè)字符串,則直接返回該參數(shù)。

python中eval函數(shù)的用法詳解

可以把list,tuple,dict和string相互轉(zhuǎn)化。

1、字符串轉(zhuǎn)換成列表

a = "[[1,2], [3,4], [5,6], [7,8], [9,0]]"

type(a)

b = eval(a)

print b[[1, 2], [3, 4], [5, 6], [7, 8], [9, 0]]

type(b)

2、字符串轉(zhuǎn)換成字典

a = "{1: 'a', 2: 'b'}"

type(a)

b = eval(a)

print b{1: 'a', 2: 'b'}

type(b)

3、字符串轉(zhuǎn)換成元組

a = "([1,2], [3,4], [5,6], [7,8], (9,0))"

type(a)

b = eval(a)

print b([1, 2], [3, 4], [5, 6], [7, 8], (9, 0))

type(b)

4、eval()函數(shù)傳進(jìn)去的參數(shù)必須是字符串或者是對(duì)象

示例1:

a=10;

print(eval("a+1"))

執(zhí)行結(jié)果: 11

示例2:

a=10;

g={'a':4}

print(eval("a+1",g))

執(zhí)行結(jié)果:5

示例3:

a=10

b=20

c=30

g={'a':6,'b':8}

t={'b':100,'c':10}

print(eval('a+b+c',g,t))

執(zhí)行結(jié)果:116? (a=6, b=100, c=10)

5、eval函數(shù),eval去除引號(hào)后會(huì)檢查到它是不是可計(jì)算的,如果可計(jì)算會(huì)將計(jì)算的結(jié)果打印出來(lái),如果不可計(jì)算直接返回結(jié)果

示例1:不可計(jì)算》》》直接輸出結(jié)果

s='["a","b","c"]'

print(eval(s))

執(zhí)行結(jié)果:?['a', 'b', 'c']

示例2:表達(dá)式可計(jì)算》》》計(jì)算之后輸出結(jié)果

s='abs(-10)'??

print(eval(s))

輸出結(jié)果:10?

5、eval()函數(shù),功能是將string變成算術(shù)表達(dá)式來(lái)執(zhí)行

示例1:

eval("1+2")

執(zhí)行結(jié)果: 3

示例2:

eval("print(\"hello, world\")")

輸出結(jié)果:hello, world

python中eval是干嘛的

以python 3.8.5150.0版本為例,python中eval函數(shù)作用如下:

1、計(jì)算字符串中有效的表達(dá)式,并返回結(jié)果。

2、將字符串轉(zhuǎn)成相應(yīng)的對(duì)象(如list、tuple、dict和string之間的轉(zhuǎn)換)。

3、將利用反引號(hào)轉(zhuǎn)換的字符串再反轉(zhuǎn)回對(duì)象。

參數(shù)解析:

expression:這個(gè)參數(shù)是一個(gè)字符串,python會(huì)使用globals字典和locals字典作為全局和局部的命名空間,將expression當(dāng)作一個(gè)python表達(dá)式進(jìn)行解析和計(jì)算。

globals:這個(gè)參數(shù)控制的是一個(gè)全局的命名空間,也就是我們?cè)谟?jì)算表達(dá)式的時(shí)候可以使用全局的命名空間中的函數(shù),如果這個(gè)參數(shù)被提供了。

并且沒(méi)有提供自定義的builtins(python的內(nèi)建模塊),那么會(huì)將當(dāng)前環(huán)境中的builtins拷貝到提供的globals里,然后進(jìn)行計(jì)算。如果globals沒(méi)有被提供,則使用python的全局命名空間。

locals:這個(gè)參數(shù)控制的是一個(gè)局部的命名空間,和globals類(lèi)似,不過(guò)當(dāng)它和globals中有重復(fù)的部分時(shí),locals里的定義會(huì)覆蓋掉globals中的,也就是說(shuō)當(dāng)globals和locals中有沖突的部分時(shí),locals說(shuō)了算,它有決定權(quán),以它的為準(zhǔn)。如果locals沒(méi)有被提供的話,則默認(rèn)為globals。


本文題目:Python函數(shù)eval python函數(shù)eval作用
轉(zhuǎn)載源于:http://weahome.cn/article/hgchsg.html

其他資訊

在線咨詢(xún)

微信咨詢(xún)

電話咨詢(xún)

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部