肥嘟嘟的闲言碎语

2004-05-11

python类方法定义注意事项

通常(几乎是必须)将self设置为方法定义中的第一个参数。
但是调用时可以不考虑这个。

比如

class test:

"""Test class for self"""

def __init__:
a = 0
b = 0

def selftest( self, str ):
print str

t = test()
t.selftest("abcdefg")

2004-05-06

python 的函数奇特值传递和引用传递

python并不支持类似其他语言的显式的值传递或者引用传递,而是采用一种折衷的自适应方法。
经测试发现对于列表、字典的完整传递,其实就是引用传递。其他的不可变得字母、字符串、数字、元组等就是值传递。所以编程过程中应该清楚地了解情况。
元组的值是不可修改的。

路漫漫其修远兮,吾将上下而求索。

Python 学习跟踪

目前正在学习python,看得书是 《python编程金典》
其中关于字典的浅copy和深copy 和目前 2.3.3 用法好像不太一样。
试验后发现当前的用法如下:
字典 浅copy 直接使用 = 即可 a=b
深copy a=b.copy()
列表 浅copy a=b
深copy a=b[:]

通过使用 id(),可以判断出是否是同一个引用

几个月过去了,再次看这段,发现python中的的浅copy其实只对复合对象有作用,比如列表中含有列表['a','b','c',['a','b']]或者字典中含有列表、类。

2004-05-01

奇怪,最初的输入都成乱码了。
还是觉得放在这比较好。 开张了!!!