今回はJulia言語のリストを扱います🐜
開発環境
開発環境は以下の通りです。
項目 | 内容 |
---|---|
OS | Windows 10 Home 64bit |
Julia | 1.6.3 |
Cmder | 1.3.14 |
※Cmderは必須ではありません
解説
リストの書き方について、スクリプトを見ながら簡単に解説します。 以下をlist.jlファイルとしてコピペして、動かしながら確認してください。
<スクリプト例>
function main() # リスト lis = [1, 2, 3] # 確認 println(lis) println(typeof(lis)) # 要素更新 lis[1] = 4 println(lis) end if abspath(PROGRAM_FILE) == @__FILE__ main() end
<出力結果>
C:\ari23\dev\julia λ julia list.jl [1, 2, 3] Vector{Int64} [4, 2, 3]
リスト
リストとは、タプルと同様に複数のオブジェクトをまとめて扱うことのできる機能または型を指します。使い方は簡単で、上記のように[]
と,
を使って、表現します。
前回の記事では説明を省きましたが、実はタプルの要素は一度定義したら変更することができません。しかし、リストは定義した後でも変更可能です。これが、タプルとリストの最大の違いです。上記スクリプト例で、その仕様が確認できますね。
専用関数
リストの専用関数の一部を以下に紹介します。ぜひ、自分の手で動かして動作を確認してください。
関数 | 内容 |
---|---|
push!(list, elem) |
引数list の末尾に要素elem を追加する |
pop!(list) |
引数list の末尾の要素を返す list は末尾の要素を失う |
insert!(list, i, elem) |
引数list のi 番目に要素elem を追加する |
deleteat!(list, i) |
引数list のi 番目の要素を削除 |
問題|要素の最大値
lis = [0, -2, 3, 0, 1]
の要素の最大値を求めるプログラムを作ってみましょう。
回答はこちら。
おわりに
Juliaのリストを簡単にまとめました。
タプルと同様、リストはPythonなど他の言語でもある機能なので、特に難しくないと思います。
以上、参考になれば幸いです(^^)
参考文献
参考文献は以下の通りです。
Julia Documentation
Julia公式のドキュメントです。英語ですが、とても丁寧に書かれていて、疑問はだいたい解消されるのではと思います。読み応えも十分。1から始めるJuliaプログラミング
公式ドキュメントの分量があまりに多くて、もう少しまとまったものが欲しいと思って購入しました。基本から応用まで幅広くカバーされつつ、量も丁度良いです。