python中int和eval的区别_python中eval与int的区别浅析
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中int和eval的区别_python中eval与int的区别浅析的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: GO 文档笔记
- 下一篇: Python实现cmd命令连续执行