python中eval与int的区别浅析

yipeiwu_com5年前Python基础

python中eval和int的区别是什么?下面给大家介绍一下:

1.eval()函数

eval(<字符串>)能够以Python表达式的方式解析并执行字符串,并将返回结果输出。eval()函数将去掉字符串的两个引号,将其解释为一个变量。

作用:

a. 处理数字

单引号,双引号,eval()函数都将其解释为int类型;三引号则解释为str类型。

b.处理字符串类型的字符串

对于eval()括号中的的字符串(非数字),如果字符串带的是单引号或者是双引号都会引起NameError,这是因为eval()函数在处理字符串时会去掉其两个引号。正确应该使用一个单引号包含一个双引号组成的三引号来包含字符串。

2.int()函数

int()函数可以将一个数转化为整数

>>> int('12',16) 18

这里有两个地方要注意:

1)12要以字符串的形式进行输入,如果是带参数base的话

2)这里并不是将12转换为16进制的数,而是说12就是一个16进制的数,int()函数将其用十进制数表示,如下

>>> int('0xa',16) 10 >>> int('10',8) 8

Python中的eval方法接受一个字符串参数,并且把字符串里面的内容当成Python代码来执行;

eval的缺点是执行速度慢,并且会有安全风险

总结

以上就是python中eval和int的区别的详细内容,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对【听图阁-专注于Python设计】的支持。

相关文章

Python脚本实现下载合并SAE日志

由于一些原因,需要SAE上站点的日志文件,从SAE上只能按天下载,下载下来手动处理比较蛋疼,尤其是数量很大的时候。还好SAE提供了API可以批量获得日志文件下载地址,刚刚写了python...

python取余运算符知识点详解

python取余运算符是什么? python取余运算符是%,即表示取模,返回除法的余数。 假设变量: a=10,b=20: 那么b % a 输出结果 0 注: Python语言支持以下类...

pandas 读取各种格式文件的方法

pandas 读取各种格式文件: 前置工序: import pandas as pd csv 文件读取中文错误处理: utf-8 codec can't decode .... pd...

django模板语法学习之include示例详解

前言 在很多网站中,基本上的都会有一个开头和一个结尾,在每一个网页中都会显示。相对于这种的来说,在Django中,最好的方法就是使用include的标签,在每一个模板中都加入这个开头和结...

python3.5 email实现发送邮件功能

本文实例为大家分享了python3.5 email发送邮件的具体代码,供大家参考,具体内容如下 直接套用代码即可 from email.mime.text import MIMETe...