我正在使用此代碼生成短url。 http://code.activestate.com/recipes/576918/Python短url生成器
這個想法是使用base62和函數enbase編碼一個整數ID只是工作正常。
class UrlEncoder(object):
...
def enbase(self, x, min_length=0):
result = self._enbase(x)
padding = self.alphabet[0] * (min_length - len(result))
return '%s%s' % (padding, result)
但我不太明白這是什麼代碼是:
class UrlEncoder(object):
...
def encode_url(self, n, min_length=0):
return self.enbase(self.encode(n), min_length)
def decode_url(self, n):
return self.decode(self.debase(n))
def encode(self, n):
return (n & ~self.mask) | self._encode(n & self.mask)
爲什麼編碼然後enbase?那個按位操作是做什麼的? 有人可以對我有所瞭解嗎?謝謝。
你可以顯示'self.mask'的值嗎?你可以顯示'_encode'功能嗎? – 2011-06-09 06:52:05
在這裏:http://code.activestate.com/recipes/576918/ – thoslin 2011-06-09 06:55:13