ドキュメンテーション

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

who

ワークスペース内の変数のリスト

構文

who
who(variables)
who(location)
who(variables,location)
c = who(variables,location)

説明

関数 who は、現在アクティブなワークスペース内のすべての変数をアルファベット順で一覧表示します。

who(variables) は、指定された変数のみを一覧表示します。

who(location) は、指定された場所にある変数を一覧表示します。グローバル ワークスペースの場合は 'global'、MAT ファイルの場合は '-file' です。MAT ファイルには、入力と同じファイル名を含めなければなりません。

who(variables,location) は、指定された場所の指定された変数を一覧表示します。location 入力は、variables の前または後に表示されきます。

c = who(variables,location) は、セル配列 c に変数名を格納します。variableslocation の指定はオプションです。

入力引数

variables

一覧表示する変数を指定する文字列。以下のいずれかの形式を使用します。

var1, var2, ...

指定された変数を一覧表示します。
パターンを一致させるには、'*' ワイルドカードを使用します。たとえば、who('A*') は、A から始まるすべての変数を一覧表示します。

'-regexp', expressions

名前が指定された「正規表現」と一致する変数を一覧表示します。

既定値: '*' (すべての変数)

location

変数をグローバル ワークスペースから、あるいはファイルから一覧表示するかどうかを示す文字列。

'global'

グローバル ワークスペース。

'-file', filename

MAT ファイル。filename 入力には絶対パス、相対パス、または部分パスを含めることができます。

既定値: '' (現在のワークスペース)

出力引数

c

各変数名に対応する文字列のセル配列。

名前が文字 a で始まる現在のワークスペース内の変数に関する情報を表示します。

who a*

MAT ファイル durer.mat に保存される変数を表示します。

who -file durer

このコードは、以下の出力を返します。

Your variables are:

X        caption  map   

セル配列 durerInfodurer.mat から変数名を格納します。

durerInfo = who('-file', 'durer');

セル配列 durerInfo のコンテンツを表示します。

for k=1:length(durerInfo)
   disp(durerInfo{k})
end

このコードは、以下の出力を返します。

  X
  caption
  map

変数名の先頭が java で、末尾が Array の変数が、ファイル mydata.mat に含まれていると仮定します。変数に関する情報を以下のように表示します。

 whos -file mydata -regexp \<java.*Array\>

入れ子関数 (get_date) 内の who を呼び出します。

function who_demo
date_time = datestr(now);
 
[str pos] = textscan(date_time, '%s%s%s', ...
                     1, 'delimiter', '- :');
get_date(str);

   function get_date(d)
      day = d{1};
      mon = d{2};
      year = d{3};
      who
   end

end

who_demo を実行すると、関数 who によって、変数が関数ワークスペース別に表示されます。ただし、出力に関数名は表示されません。

Your variables are:

d          mon        ans        pos        
day        year       date_time  str 

代替方法

ワークスペースの変数を表示するには、「ワークスペース ブラウザー」を使用します。MAT ファイルのコンテンツを表示するには、現在のフォルダー ブラウザーの詳細パネルを使用します。

詳細

すべて折りたたむ

ヒント

  • 出力引数を指定しない限り、関数 who は変数リストを表示します。

  • 関数 who は、入れ子関数内で使用されている場合、その関数のワークスペースの変数と、その関数を含んでいるすべての関数を一覧表示し、ワークスペース別に分類します。これは、who を関数コードから呼び出すか、MATLAB® デバッガーから呼び出すかにかかわらず適用されます。

この情報は役に立ちましたか?