eval在python中的用法例子,eval 的用法,以及python中推导列表的案例
eval在python中的用法例子目录
eval在python中的用法例子
在Python中,`eval()`函数用于执行一个Python表达式,并返回表达式的结果。下面是一些使用`eval()`函数的例子:
1. 计算数学表达式:
```python
x = 2
y = 3
result = eval(x + y('Hello, World!')a) # 输出:10
```
eval 的用法,以及python中推导列表的案例
>>>a = [[1,2,3],[2,4,5],[1,2,3]]
>>>for i in range(len(a[0])): 第一种方法
... a[0][i],a[1][i],a[2][i] 此为tuple形式
(1, 2,1)
(2, 4,2)
(3, 5,3)
>>>for i in range(len(a[0])):
...print([a[0][i],a[1][i],a[2][i]]) 注意括号决定了输出的形式
[1, 2,1]
[2, 4,2]
[3, 5,3]
>>>eval("a[0]")
[1, 2,3]
>>>eval("a[0][0]")
1
>>>eval("a[0][0],a[1][0],a[2][0]")
(1, 2,1)
a =[[1,2,3],[2,4,5],[1,2,3]]第二种方法
>>>s = "" 定义一个 为s的字符串
>>>l = [] 定义一个为l 的列表
>>>for i in range(len(a[0])):i大循环是a[][]第二个括号里的值
... for j in range(len(a)):j是a[][]第一个括号里的值
... s += "a[%s][%s]," % (j,i) 输出的格式把前面的加上
... l.append(s) 三个为一组添加到 l 列表里
... s = "" s字符串重新置空,开始第二次循环
...
>>>l
第一次循环结果置空后第二次循环结果
[a[0][0],a[1][0],a[2][0],,a[0][1],a[1][1],a[2][1],,a[0][2],a[1][2],a[2][2],]
置空后第三次循环结果
>>>[eval(i) for i in l] 循环l里的三个元素 并输出结果
[(1,2, 1), (2, 4, 2), (3, 5, 3)]
I
python当中的eval()函数是起什么作业的
eval函数将字符串当成有效Python表达式来求值,并返回计算结果
例子
x=0
l='x+1'
print(eval(l))结果是1
python中eval函数的用法详解
Python中eval的用法:
Python eval()函数的功能:将字符串str当成有效的表达式来求值并返回计算结果。
语法:
eval(source[,globals[,locals]]) -> value
参数:
source:一个Python表达式或函数compile()返回的代码对象。
blobals:可选。
必须是dictionary
locals:可选。
任意map对象
如果提供了globals参数,那么它必须是dictionary类型;如果提供了locals参数,那么它可以是任意的map对象。
Python的全局名字空间存储在一个叫globals()的dict对象中;局部名字空间存储在一个叫locals()的dict对象中。
我们可以用print(locals())来查看该函数体内的所有变量名和变量值。
x = 1
y = 1
num = eval("x+y")
print(num,num)
def g():
x = 2
y = 2
num1 = eval("x+y")
print(num1,num1)
num2 =eval(x+y,globals())
print(num2,num2)
num3 = eval("x+y",globals(),locals())
print(num3,num3)
g()
num2
num1 4
num2 2
num3 4
解析:num2因为有globals所以是全局变量,执行后结果为4;num3既有globals又有locals,仅在此情况下,优先采用locals的值,故计算结果是2。
(随机推荐阅读本站500篇优秀文章点击前往:500篇优秀随机文章)