Übung: Freigabe von Werten

Abgeschlossen

In dieser Übung testen Sie einige der erweiterten Features in polyglotten Notebooks.

Freigabe von Werten

Lassen Sie uns zeigen, wie nützlich es sein kann, Variablen zwischen Zellen freizugeben, die verschiedene Kernel verwenden.

  1. Erstellen Sie eine Zelle mit der Schaltfläche + Code.

  2. Wählen Sie in der Dropdownliste auf der rechten Seite csharp C#-Skript aus.

  3. Geben Sie den folgenden Code in die Codezelle ein:

    var products = new []{"Saab", "Volvo", "BMW"};
    foreach(var product in products)
    {
        Console.WriteLine(product);
    }
    
  4. Führen Sie die Codezelle mithilfe des Symbols Ausführen aus.

  5. Wählen Sie auf der Symbolleiste oben auf dem Bildschirm die Menüoption Variablen aus.

  6. Wählen Sie das Symbol Freigeben in der Spalte „Aktionen“ aus.

  7. Wählen Sie als Nächstes die Option JavaScript – JavaScript aus.

    Screenshot der verschiedenen Kernel im Polyglot Notebook.

    Es sollte eine neue Codezelle mit JavaScript als Kernel mit folgendem Code erstellt werden:

    #!set --value @csharp:products --name products
    

    Jetzt verfügen Sie über Code, mit dem Sie eine C#-Variable verwenden können.

  8. Fügen Sie Ihrer JavaScript-Zelle den folgenden Code hinzu:

    console.log(products); // it should print Saab, Volvo, Fiat 
    

Arbeiten mit Wertspeicher

Versuchen wir es mit einem anderen Fall der Variablenfreigabe. Dieses Mal arbeiten wir mit JSON-Daten.

  1. Erstellen Sie eine neue Codezelle, indem Sie + Code und dann Wert – Rohwertspeicher für den Kernel auswählen.

  2. Fügen Sie den folgenden JSON-Code in die neue Zelle ein:

    #!value --name data
    [
        {
            "id": 1, "name": "video game", "price": 59.99
        }
    
        {
            "id": 2, "name": "book", "price": 9.99
        }
    
        {
            "id": 3, "name": "movie", "price": 19.99
        }
    ]
    
  3. Führen Sie die Zelle aus, und Daten sollten in der Variablentabelle angezeigt werden, die noch aus dem vorherigen Abschnitt geöffnet sein sollte. Wenn Sie sie erneut öffnen müssen, wählen Sie auf der Symbolleiste oben auf dem Bildschirm Variablen aus.

  4. Wählen Sie das Freigabesymbol in der Spalte Aktionen für die Variable Daten aus.

  5. Wählen Sie csharp C#-Skript als Zielzelle aus. In Ihrer neuen C#-Zelle sollte jetzt der folgende Code angezeigt werden:

    #!set --value @value:data --name data
    
  6. Fügen Sie als Nächstes den folgenden Code in die Zelle ein:

    // import JSON in C#
    using System.Text.Json;
    
    // parse JSON in C#
    class Product
    {
    
        public int Id {get; set;}
        public string Name {get; set;}
        public decimal Price {get; set;}
    }
    
    // deserialize JSON, ignore case for property names
    JsonSerializerOptions options = new JsonSerializerOptions
    {
        PropertyNameCaseInsensitive = true
    }
    
    var products = JsonSerializer.Deserialize\<Product[]>(data, options);
    
    foreach(var product in products)
    {
        Console.WriteLine(product.Name);
    }
    

Glückwunsch, Sie haben erfolgreich mehr über die Arbeit mit der Freigabe von Variablen gelernt.