Vyper

【Vyper】第2章第4回:関数の引数と戻り値:データの受け渡し方法

本記事では、Vyperにおける関数の引数と戻り値の基本的な使い方について詳しく解説します。データの受け渡し方法を理解することで、より柔軟で効率的なスマートコントラクトを作成できるようになります。

0. 記事の概要

この記事を読むメリット

  • 関数の引数と戻り値の基本を理解できる
  • データの受け渡し方法を学び、スマートコントラクトを最適化できる
  • 実際のコード例を通じてVyperの実践的な知識を習得できる

1. 関数の引数とは?

関数の引数とは、関数が実行される際に外部から受け取る値のことです。引数を適切に活用することで、柔軟な処理が可能になります。

1.1 単一の引数を持つ関数


        @public
        def square(n: int128) -> int128:
            return n * n
        

動作解説

  • n: int128 – 関数が受け取る整数型の引数
  • return n * n – 受け取った数値を2乗して返す

1.2 複数の引数を持つ関数


        @public
        def add(a: int128, b: int128) -> int128:
            return a + b
        

動作解説

  • a, b: int128 – 2つの整数型の引数を受け取る
  • return a + b – 2つの数値を加算して返す

2. 関数の戻り値とは?

関数の戻り値とは、関数の実行結果として返されるデータのことです。戻り値を利用することで、関数の処理結果を別の処理に活用できます。

2.1 戻り値を持たない関数


        @public
        def log_message():
            log("関数が呼び出されました")
        

動作解説

  • log(“関数が呼び出されました”) – 関数実行時にログを出力する
  • この関数は値を返さず、ログ出力のみを行う

2.2 複数の戻り値を持つ関数


        @public
        def get_coordinates() -> (int128, int128):
            return (10, 20)
        

動作解説

  • return (10, 20) – 2つの整数値をタプル形式で返す
  • 戻り値を複数持たせることで、関数の出力を柔軟に設計できる

3. 練習問題

3.1 練習問題

以下の課題に挑戦してください。

  • 3つの整数を受け取り、合計と平均を返す関数を作成する
  • 文字列を受け取り、その長さを返す関数を作成する

4. まとめ

本記事では、Vyperにおける関数の引数と戻り値の基本的な使い方について学びました。適切にデータを受け渡すことで、より効率的なスマートコントラクトを作成しましょう。