擅长:python、mysql、java
<p>马辛是对的。这些对象在出/入作用域时正在重新使用相同的内存位置。你知道吗</p>
<pre><code>#!/usr/bin/env python
import datetime
def main():
while True:
input()
my_function()
def my_function():
dep = Deployer()
print(hex(id(dep)))
dep.do_something()
class Deployer:
def __init__(self):
try:
print(self.time)
except AttributeError as ex:
print(ex)
self.time = datetime.datetime.now()
def do_something(self):
print(self.time)
if __name__ == "__main__":
main()
</code></pre>
<p>输出:</p>
<pre><code>'Deployer' object has no attribute 'time'
0x7f2072d79f60
2015-01-16 05:47:51.561046
'Deployer' object has no attribute 'time'
0x7f2072d79f60
2015-01-16 05:47:51.926064
'Deployer' object has no attribute 'time'
0x7f2072d79f60
2015-01-16 05:47:52.241109
'Deployer' object has no attribute 'time'
0x7f2072d79f60
2015-01-16 05:47:52.547327
'Deployer' object has no attribute 'time'
0x7f2072d79f60
2015-01-16 05:47:52.892630
</code></pre>