2009-08-18 4 views
4

私はF#の初心者ですので、まったく初心者の質問を言い訳してください。F#のプリントシーケンス

私はpriceという変数にシーケンスを格納しています。このシーケンスの内容をインタラクティブウィンドウに出力したいと思います。これを行う最も簡単なコマンドは何ですか?ここで

は私の配列である。

> prices;; 
val it : seq<System.DateTime * float> = seq [] 

私はそれをprintf'ing試してみたが、それは私にエラーを与える:

> printf("%A", prices);; 

    printf("%A", prices);; 
    -------^^^^^^^^^^^^ 

stdin(82,8): error FS0001: The type ''b * 'c' is not compatible with the type 'Printf.TextWriterFormat<'a>' 

任意の助けをいただければ幸いです。

答えて

14

のprintfは、括弧を取ることはありません。

printfn "%A" prices;; 

(詳細はF# function types: fun with tuples and curryingを参照してください)

をあなたはまた、例えば、リストに配列を変換するかもしれません

printfn "%A" (Seq.toList prices);; 
+0

素晴らしいリンクをありがとう。 printfnはまさに私が探していたものです。 – rein

2
> prices;; 
val it : seq<System.DateTime * float> = seq [] 

seq []は、シーケンスが空であることを意味します。

+0

ありがとうございます。それは全体の多くを説明します:) – rein

2

また、あなたはFSIを変更することにより、インタラクティブセッションプリンタの機能を制御することができます。*プロパティ (FloatingPointFormat、PrintWidth、PrintDepth、PrintLength、...) F.e.ご覧ください:http://cs.hubfs.net/forums/post/7438.aspx