作者: 藤岡和夫
日時: 2003/5/04(00:59)
お世話になります。初歩的な質問で毎度申し訳ありません。

query()は関数なんだろうと思ったのですが、queryという関数はどこから来たの
かよくわからないのです。文字列に()をつければ関数と見做されるのでしょうか。
=>うーむ。そうなのか・・・と、「初めてのPython」134ページを読む
(^^;)「関数はオブジェクトである:間接呼び出し」

それから、メールの後に見つけたのですが、

http://member.nifty.ne.jp/Fe/script/kouza/kouza2.html

には、

「'_' は前回の出力結果を参照する特殊な記号である。」

とあるのですが、何か関係ないでしょうか。

for _ in query()

でquery()の戻り値が返らない場合はループは実行されないのですね。成功した
場合、"_"には常に1が入っています。

On Sat, 03 May 2003 23:13:22 +0900
Atsuo Ishimoto <ishimoto@...> さんwrote:

> 石本です。
> 
> On Fri, 02 May 2003 22:47:44 +0900
> 藤岡和夫 <kazuf@...> wrote:
> 
> > 下記のようにサンプルを参考にPyLogモジュールを使用したスクリプトを書きま
> > した。意図どおりに動くのですが、入れ子になっている二つのforループの挙動
> > の違いがよくわかりません。解説お願いできますでしょうか。
> 
> んと、どちらも同じように見えますが…
> 
> for query in queries:
>     ...
> 
> はシーケンス queries の要素を順番に処理しますし、
> 
> for _ in query():
>    ...
> 
> は関数 query を呼び出して、その戻り値のシーケンスを順番に処理します。
> 
> # 変数名に "_" を使う人ははじめて見たなぁ > PyLogの作者さん
> # ここで言っても仕方ないですが(^^;
> 
> --------------------------
> Atsuo Ishimoto
> ishimoto@...
> Homepage:http://www.gembook.jp
> 
> 

藤岡 和夫
FGALTS@...
kazuf@...
TS Networkのために http://homepage1.nifty.com/kazuf/