-1

Pythonで11個の変数のリストを出力するには、「Exec」を使用します。11 個の項目のリストがあり、このコードはそれらすべてを出力します。

for count in range(1,11):
    question = ("print " + "question" + str(count))
    exec question

C# で同様のことを行うにはどうすればよいですか? (リストを使用しない場合)

これが私がこれまでに持っているものです

string line;
for (int i = 1; i < 200; i++)
  {
line = ("Console.WriteLine(scene1_f"+i);
    // Execute "line"
  }  

ありがとう。

4

1 に答える 1

1

何かを試しているときに、C# 言語に関するいくつかのことを読んでおくのが賢明だと思います。同時に、そのような質問に答えようとする前に、いくつかの Python チュートリアルを調べた方が賢明でしょう。

C# は動的な型と式をサポートしていますが、主に「厳密に型指定された」構造を作成するために使用されます。あなたが提供した例については、簡単で単純な直接翻訳はないと思います。

「scene1_f1」から「scene1_f200」までの変数はScene、オブジェクト インスタンスで動作するいくつかのプロパティとメソッドを持つ、クラスのような c# 型のインスタンスである可能性があります。

同じタイプの操作を実行したいオブジェクトが複数ある場合Scene(例のようにコンソールに出力するなど)、それらを List またはそれらを配列に格納します。

私が何を意味するかを説明するために、架空の例を追加しました。

 public class Scene
 {
      public Scene(string name)
      {
          Name = name;
      }

      public string Name { get; set; }

      // ... more properties

      public void Draw()
      {
          // logic for drawing
      }

      // ... more methods.

      public override string ToString()
      {
          // here return what you would want to have as
          // a string representation of a Scene object.
          return "Scene " + Name;
      }
 }


 // in a different part of your code, create and add the Scene objects
 var scenesList = new List<Scene>();

 scenesList.Add(new Scene("Some scene name"));
 // add more

 // Now you can print them to the console like this:
 foreach (var scene in scenesList)
     Console.WriteLine(scene);
于 2013-08-26T01:29:01.580 に答える