Python的一个小技巧和Lua的Unpack比较
<meta content="SciTE - www.Scintilla.org" name="Generator" id="fegt0"> <script type="text/javascript" language="JavaScript" id="fegt1"> <!-- function symbol(id, sym) { if (id.textContent==undefined) { id.innerText=sym; } else { id.textContent=sym; } } function toggle(id) { var thislayer=document.getElementById('ln'+id); id-=1; var togline=document.getElementById('hd'+id); var togsym=document.getElementById('bt'+id); if (thislayer.style.display == 'none') { thislayer.style.display='block'; togline.style.textDecoration='none'; symbol(togsym,'- '); } else { thislayer.style.display='none'; togline.style.textDecoration='underline'; symbol(togsym,'+ '); } } //--> </script><style type="text/css" id="fegt2"> .S0 { color: #808080; } .S2 { color: #007F7F; } .S5 { font-weight: bold; color: #00007F; } .S8 { font-weight: bold; color: #0000FF; } .S9 { font-weight: bold; color: #007F7F; } .S10 { font-weight: bold; color: #000000; } span { font-family: 'Verdana'; color: #000000; font-size: 10pt; } </style> - classA(object):- defsetline(self,line):
self.line=line
- defsetitem(self,a,b):
printa,b
- deff(self):
print(type(self.line[:2]))
self.setitem(*self.line[:2]) # 这里的*表示把一个list解成两个参数
a=A()
a.setline([1,2])
a.f()
输出:
>pythonw -u "t.py"
<type 'list'>
1 2
对应之Lua的用法:
<meta content="SciTE - www.Scintilla.org" name="Generator" id="jnak1"> <script type="text/javascript" language="JavaScript" id="jnak2"> <!-- function symbol(id, sym) { if (id.textContent==undefined) { id.innerText=sym; } else { id.textContent=sym; } } function toggle(id) { var thislayer=document.getElementById('ln'+id); id-=1; var togline=document.getElementById('hd'+id); var togsym=document.getElementById('bt'+id); if (thislayer.style.display == 'none') { thislayer.style.display='block'; togline.style.textDecoration='none'; symbol(togsym,'- '); } else { thislayer.style.display='none'; togline.style.textDecoration='underline'; symbol(togsym,'+ '); } } //--> </script><style type="text/css" id="jnak3"> .S0 { color: #FF0000; } .S4 { color: #007F7F; } .S5 { color: #00007F; } .S10 { color: #000000; } .S13 { color: #00007F; background: #F5FFF5; text-decoration: inherit; } span { font-family: 'Verdana'; color: #000000; font-size: 10pt; }</style> - f=function(...)
print(...)
end
t={1,2}
f(unpack(t))
输出:
>luai "t.lua"
1 2