Python 内置方法
初始化
- **_init_**:这玩意看似写着初始化,但是实际上本方法是在类实例化之后调用,用于初始化内部数据
- **_new_**:这才是实例化时会调用的方法,也就是类最开始调用的方法~
eval
Python中的eval()
是一个非常有用的内置函数,它可以用来执行一个字符串表达式,并返回表达式的值。
eval()
函数将字符串当成有效的表达式来求值并返回计算结果。也就是说,我们可以将一个字符串传递给eval()
,然后该字符串会被当作Python表达式执行。
例如:
1 | eval("1 + 2") |
在上面的例子中,传递给eval()的字符串被解释执行了。
eval()可以执行使用Python语法的任何表达式,包括数字、字符串、列表、字典等。但需要注意的是,使用eval()执行的语句应该是安全可信的,不能直接处理用户输入,因为那会存在安全隐患。
另外,python还有一个非常类似的函数exec(),它也可以执行字符串形式的python代码,但是不返回值,仅执行代码逻辑。
getattr
在Python中,getattr()是一个非常有用的内置函数,它可以用来获取一个对象的属性。
getattr()函数的语法如下:
1 | getattr(object, name[, default]) |
其中:
- object:对象
- name:字符串,对象属性的名称
- default:可选,如果指定的属性不存在时的默认值
getattr()会去对象object中查找名称为name的属性,如果存在就返回该属性的值。如果不存在,则返回默认值default,如果没有指定默认值,则触发AttributeError异常。
例如:
1 | class Person: |
这在访问对象的属性时非常方便,特别是当属性名是动态传入的情况。
getattr()通常用于访问对象的属性,与之对应的函数setattr()用于设置对象的属性。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 被咬了一口の包子°!
评论