Python(88)_双下划线方法

1、双下划线方法

#-*-coding:utf-8-*-
import os
import time
‘‘‘
迭代器
‘‘‘
print(dir([]))  # 告诉我列表拥有的所有方法
print(dir({}))
print(dir(‘‘))

‘‘‘
求共有方法,集合求交集
‘‘‘
ret = set(dir([]))&set(dir({}))&set(dir(‘‘))&set(dir(range(10)))
print(ret)  #  __iter__ 

print([1].__add__([2]))
print([1]+[2])  # 这句话其实是内部调用上面的函数  1+2等等,都是调用双下方法

原文地址:https://www.cnblogs.com/sunnybowen/p/10516161.html

时间: 2024-10-07 17:12:52

Python(88)_双下划线方法的相关文章

Python 中的特殊双下划线方法

python类内部部分双下划线特殊方法 __setattr__, __getattr__, __delattr__, hasattr __getattribute__ __getitem__(),__setitem__(), __delitem__() 主程序如下: class Foo: def _inif(self,pname): self.pname = pname def func(): print('i'm func') def __getattr__(self, item): prin

python基本知识(八):定制类,双下划线方法

'''定制类: 1. 双下划线属性__attr__ 2. 元类metaclass''' # 综述 '''iterable/iterator:1. __iter__(): return iterable_obj 1) 实现了该方法的对象叫iterable 2) iter(obj)会调用该方法, 生成一个迭代器iterator 2. __next__(): 指明迭代器怎么返回值 1) next(iterator)会返回一个值, 直到所有的值都返回了报错StopIteration 2) for.. i

Python双下划线方法解释

__init__ 类实例创建之后调用, 对当前对象的实例的一些初始化, 没有返回值 __name__ 标识模块的名字的一个系统变量 __call__ 是否可被调用 __main__ 主模块模块名(是否当前模块或导入模块) __new__ 创建类实例的方法, 创建对象时调用, 返回当前对象的一个实例 __init__.py 主要控制包的导入行为 __file__ 表示文件本身,输出的是一个绝对路径 sys.path.append(os.path.dirname(os.path.dirname(os

面向对象双下划线方法

1|0阅读目录 isinstance和issubclass 反射 setattr delattr getattr hasattr __str__和__repr__ item系列 __getitem__ __setitem__ __delitem__ __del__ __new__ __call__ with和__enter__,__exit__ __len__ __hash__ __eq__ 回到顶部 2|0isinstance和issubclass isinstance(obj,cls)检查是

67 orm13查询语句,外键查询,多对多查询 单表查询双下划线方法

主要内容:https://www.cnblogs.com/maple-shaw/articles/9403501.html 注意:  如果想要文件中运行整个django项目: 需要在文件中写入: import os if __name__ == "__main__": os.environ.setdefault("DJANGO_SETTINGS_MODULE", "orm_operate.settings") import django djan

私有属性,私有方法,类变量,实例变量,单下划线,双下划线

1.私有属性__age,不能通过实例对象直接调用,而是通过一个方法来调用 class Dog: def __init__(self, new_age): self.__age = new_age def get_age(self): return self.__age wang_cai = Dog(1) result = wang_cai.get_age() print(result) 2.私有方法,通过一个共有方法来调用 class Dog(object):   def __init__(se

python的单下划线和双下划线

python 类中的单下划线开头的变量表示:该方法为类的私有方法,原则上外部不能访问,但是用._XX是可以访问到的 双下划线开头则是强制外部不能直接访问的用.__XX是访问不到的,它内部其实是将变量名重新命名为:_类名__变量名,所以可以通过._类名__变量名访问 #_*_coding:utf-8_*_ __author__ = 'Linhaifeng' class People: __star='earth111111111111' __star1='earth111111111111' __

python 单下划线/双下划线使用总结(转载)

python 单下划线/双下划线使用总结 时间:2013-10-08 10:56来源:www.chengxuyuans.com Python 用下划线作为变量前缀和后缀指定特殊变量/方法. 主要存在四种情形1.    1. object # public    2. __object__ # special, python system use, user should not define like it    3. __object # private (name mangling duri

python 里面的单下划线与双下划线的区别(私有和保护)

Python 用下划线作为变量前缀和后缀指定特殊变量. _xxx 不能用'from module import *'导入 ——变量名_xxx被看作是“私有 的”,在模块或类外不可以使用.__xxx__ 系统定义名字 ——__xxx 类中的私有变量名 ——只有类对象自己能访问,连子类对象也不能访问到这个数据. 核心风格:避免用下划线作为变量名的开始. 因为下划线对解释器有特殊的意义,而且是内建标识符所使用的符号,我们建议程序员避免用下划线作为变量名的开始.一般来讲,变量名_xxx被看作是“私有 的