提供: Japanese Scratch-Wiki

(名称の更新)
14行目: 14行目:
 
* [[() 番目( () ) (ブロック)|<sb>((1 v) 番目( [リスト v] ))</sb>]]{{-}}リストの特定の項目を返す値ブロックである。
 
* [[() 番目( () ) (ブロック)|<sb>((1 v) 番目( [リスト v] ))</sb>]]{{-}}リストの特定の項目を返す値ブロックである。
 
* [[() の長さ (リストブロック)|<sb>([リスト v] の長さ::list)</sb>]]{{-}}リストの項目数(長さ)を返す値ブロックである。
 
* [[() の長さ (リストブロック)|<sb>([リスト v] の長さ::list)</sb>]]{{-}}リストの項目数(長さ)を返す値ブロックである。
* [[() に () が含まれる (ブロック)|<sb><[リスト v] に [thing] が含まれる></sb>]]{{-}}[[真偽ブロック]]で、リストに何かが含まれているかを返す。
+
* [[() に () が含まれる (ブロック)|<sb><[リスト v] に [ほげ] が含まれる></sb>]]{{-}}[[真偽ブロック]]で、リストに何かが含まれているかを返す。
 +
* [[() 中の () の場所 (ブロック)|<sb>[リスト v] 中の (ほげ) の場所::list</sb>]]{{-}}[[値ブロック]]で、特定の項目が含まれる番目を返す。番号は1から始まる。
  
 
=== Scratch 3.0での追加 ===
 
=== Scratch 3.0での追加 ===
 
Scratch 3.0では、次のブロックが追加される。
 
Scratch 3.0では、次のブロックが追加される。
* [[ファイル:Item number of thing in list.png|link=() 中の () の場所 (ブロック)]]{{-}}リスト内での、ある項目の場所を返す[[値ブロック]]。<ref>https://github.com/LLK/scratch-gui/issues/600</ref>
+
* [[ファイル:Item number of thing in list.png|link=]]{{-}}リスト内での、ある項目の場所を返す[[値ブロック]]。<ref>https://github.com/LLK/scratch-gui/issues/600</ref>
  
 
== 項目 ==
 
== 項目 ==

2019年6月22日 (土) 00:25時点における版

このきじは ひらがなのページがありません。ごめんなさい。
リストの例
Scratch 3.0でのリストの例

リスト(他のプログラミング言語では配列と呼ばれる)は、複数の情報を一度で取り扱うためのツールである。リストの中身は、通し番号で管理される。リストブロックは、データブロックの一部である。

リストブロック

詳細は「リストブロック」を参照

リストブロックは次の8個ある。

Scratch 3.0での追加

Scratch 3.0では、次のブロックが追加される。

項目

空のリスト
空のリスト (3.0)

項目は、手動またはスクリプトで追加、変更、削除できる。

手動での編集方法

  • リストに項目を追加するには、左下の「+」ボタンを押す。
  • 特定の位置の後に項目を挿入するには、項目を選択し、↵ Enterを押す。⇧ Shiftを押しながらすると、前に挿入できる。
  • 項目を削除するには、項目を選択して、右にある「×」を押す。
  • 次の項目へ移るには、Tab ⇆を押す。
  • 前の項目へ移るには、Tab ⇆⇧ Shiftを同時押しする。

読み込みと書き出し

CSV読み込み
リストを右クリックして、「書き出し」を押すと、リストの情報を書き出すことができる。これは、すべての項目を、LF(\n)で区切ったものである。「読み込み」を押すと、そのデータを読み込むことができる。
Warning 警告: 読み込んだデータは上書きされる。

カンマ区切りのCSVファイルを読み込むときは、「どちらのカラム(列)を取り込みたいですか?」と問われるので、数値を入力する。

サイズ制限

Scratchがクラッシュしない限り、リストのサイズ制限はない。ただし、アップロードするとき、約30秒経つと、エラーになる。(ただし、そのようなリストはほぼない。)また、リストの内容はJSON内に2回記述される。そのため、25万の単語が格納できるのに、35万は格納できないといったことが起こる。なお、リスト1項目に入るのは10240文字までである。

Scratch 3.0のサイズ制限

Scratch 3.0にて、リストには200,000個の制限がある。

We did some research and found that 200K list items was sufficient for > 99.999% of all Scratch projects. The limit is to prevent projects with large lists from creating memory pressure that could cause Scratch 3.0 to crash on lower-powered devices (such as mobile phones, tablets, Raspberry Pis, etc).

– thisandagain, [2]

日本語参照訳: 「私たちの調査により、Scratchプロジェクトの99.999%以上はリストの項目数が200,000未満であることがわかった。この制限は、プロジェクトの巨大なリストで、メモリーの少ないデバイス(携帯電話、タブレット、Raspberry Pi、その他)でのクラッシュを防ぐためである。」

その代わり、リスト1項目に対しては、2018年6月現在制限がない。

使用例

有名な例は以下の通りです。

  • 計算
  • 文字列の暗号化
  • 複数の値を記憶する
  • データの保存

コピペと書き出し機能

リストは、他のステージモニターと違い、項目のコピーが可能である。また、「書き出し」を使うと、複数行にわたるデータも保存できる。このため、リストは、セーブをするための重要な要素となっている。

クラウドリスト

詳細は「クラウドリスト」を参照

クラウドリストは、Scratch 2.0のα・β版の実験的な機能だった。しかし、現在は廃止されている。クラウドリストの値はサーバーに保存された。これが決定的な違いであった。多くのユーザーは、クラウドリストが戻ってくることを願っている。現在、クラウド変数の制限のため、クラウドリストの多くは使えない。

キャスト

詳細は「キャストの規則」を参照

リストは、その内容に応じて数値や文字列にキャストされる。

プロジェクト例

提案

多くの人が、リスト [リスト v] を表示するリスト [リスト v] を隠すの追加を望んでいた。これは、Scratch2.0で追加された。

出典

  1. https://github.com/LLK/scratch-gui/issues/600
  2. scratch:users/thisandagain#comments-46216169

関連項目