在Python 3的函数
为什么在这个函数中只用到这两个函数的别名?它们可以很容易地被替换为
unquote
(来自http://www.opensource.apple.com/source/python/python-3/python/Lib/urllib.py)中:def unquote(s):
"""unquote('abc%20def') -> 'abc def'."""
mychr = chr
myatoi = int
list = s.split('%')
res = [list[0]]
myappend = res.append
del list[0]
for item in list:
if item[1:2]:
try:
myappend(mychr(myatoi(item[:2], 16))
+ item[2:])
except ValueError:
myappend('%' + item)
else:
myappend('%' + item)
return "".join(res)
我们有前两行执行的代码:
mychr = chr
myatoi = int
它们的用途:
...
myappend(mychr(myatoi(item[:2], 16))
+ item[2:])
...
为什么在这个函数中只用到这两个函数的别名?它们可以很容易地被替换为
chr
和int
。