Craftlaunch/Exを応援しよう!Part 5at SOFTWARE
Craftlaunch/Exを応援しよう!Part 5 - 暇つぶし2ch533:名無しさん@お腹いっぱい。
07/01/25 21:49:38 p9UFxO650
>>530
config.py に以下を書いてみたら、paramlist に *args とか書いて
余分な引数をタプルとして受け取れるようにできたよ

def MyCmdScriptCall(self, mod, *args):
    if len(args) < len(self.format):
        raise CommandFailedException, 'parameter num mismatch.'

    param_objects = []
    for (f, a) in zip(self.format, args):
        if  f == 's': param_objects.append(a)
        elif f == 'i': param_objects.append(int(a))
        elif f == 'f': param_objects.append(float(a))
    param_objects.extend( args[len(self.format):] )

    self.func( *param_objects )

CmdScript.__call__ = MyCmdScriptCall


テスト用:
<script name='print' paramlist='*args' format=''>
    <![CDATA[
    import sys
    for v in args: sys.stderr.write("%s\n" % v)
    ]]>
</script>


次ページ
続きを表示
1を表示
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch