python获取文件名中两条下划线之间的部分_Python文件名中双下划线的意义

啊哈!我看你已经发现了神奇的方法。在

双下划线被称为“dunder”,它们调用特殊的方法,这些方法可以对对象产生一些非常巧妙的效果。它们不会改变意义,但它们是非常神奇的伏都教,是你腰带上的好工具。在

__init__是一个神奇的方法,用于声明对象初始化时发生的事情。它前面只有__new__。在

我使用的这些方法中最有用的是__dict__方法。{dictionary}中的所有属性都可以转换成类中的值。虽然我不认为用它作为文件名会有用。在

下面是一个例子:class Thing(object):

def __init__(self): ##Init here is a magic method that determines what haps first

self.tint = "black"

self.color = "red"

self.taste = "tangy"

thing = Thing()

dictionary_from_class = {}

for key in thing.__dict__.keys(): ##returns all key values. here: "tint, color, taste"

dictionary_from_class[key] = thing.__dict__[key]

在python中启动Idle,并尝试一下。祝你练习Python伏都教好运!在

对不起,我很快就看了你的问题,让我提一下,因为我的答案中可能没有提到这个问题:如果文件名是__init__.py,它的作用与我之前提到的类似。它调用初始化,python将在到达该文件夹以供模块使用时立即执行这些操作。也就是说,如果因为调用了该文件而正在读取该文件,例如引用了一个模块文件夹,在这种情况下,您需要一个__init__.py文件来让python在该文件夹中识别它。您可以使用任何魔术方法作为名称,以便在使用时获得类似的功能。在

我希望澄清是有用的。在

-约瑟夫

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值